HDLRuby 3.1.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/HDLRuby.gemspec +1 -0
- data/README.html +2330 -2670
- data/README.md +400 -100
- data/ext/hruby_sim/hruby_rcsim_build.c +402 -3
- data/ext/hruby_sim/hruby_sim.h +2 -1
- data/ext/hruby_sim/hruby_sim_calc.c +34 -7
- data/ext/hruby_sim/hruby_sim_core.c +15 -5
- data/ext/hruby_sim/hruby_sim_tree_calc.c +112 -23
- data/lib/HDLRuby/hdr_samples/c_program/echo.c +33 -0
- data/lib/HDLRuby/hdr_samples/comparison_bench.rb +2 -2
- data/lib/HDLRuby/hdr_samples/counter_bench.rb +1 -1
- data/lib/HDLRuby/hdr_samples/counter_dff_bench.rb +8 -7
- data/lib/HDLRuby/hdr_samples/dff_properties.rb +2 -0
- data/lib/HDLRuby/hdr_samples/enum_as_param.rb +52 -0
- data/lib/HDLRuby/hdr_samples/linear_test.rb +2 -0
- data/lib/HDLRuby/hdr_samples/logic_bench.rb +6 -0
- data/lib/HDLRuby/hdr_samples/mei8.rb +6 -6
- data/lib/HDLRuby/hdr_samples/mei8_bench.rb +6 -6
- data/lib/HDLRuby/hdr_samples/memory_test.rb +2 -0
- data/lib/HDLRuby/hdr_samples/named_sub.rb +9 -5
- data/lib/HDLRuby/hdr_samples/ram.rb +7 -6
- data/lib/HDLRuby/hdr_samples/ruby_fir_hw.rb +2 -0
- data/lib/HDLRuby/hdr_samples/ruby_program/echo.rb +9 -0
- data/lib/HDLRuby/hdr_samples/ruby_program/stdrw.rb +6 -0
- data/lib/HDLRuby/hdr_samples/ruby_program/sw_cpu_terminal.rb +614 -0
- data/lib/HDLRuby/hdr_samples/ruby_program/sw_inc_mem.rb +32 -0
- data/lib/HDLRuby/hdr_samples/ruby_program/sw_log.rb +33 -0
- data/lib/HDLRuby/hdr_samples/struct.rb +15 -3
- data/lib/HDLRuby/hdr_samples/with_board.rb +63 -0
- data/lib/HDLRuby/hdr_samples/with_bram.rb +1 -1
- data/lib/HDLRuby/hdr_samples/with_bram_frame_stack.rb +1 -1
- data/lib/HDLRuby/hdr_samples/with_bram_stack.rb +1 -1
- data/lib/HDLRuby/hdr_samples/with_channel.rb +2 -0
- data/lib/HDLRuby/hdr_samples/with_channel_other.rb +2 -0
- data/lib/HDLRuby/hdr_samples/with_class.rb +3 -1
- data/lib/HDLRuby/hdr_samples/with_clocks.rb +42 -0
- data/lib/HDLRuby/hdr_samples/with_connector.rb +2 -0
- data/lib/HDLRuby/hdr_samples/with_connector_memory.rb +2 -0
- data/lib/HDLRuby/hdr_samples/with_fixpoint.rb +6 -0
- data/lib/HDLRuby/hdr_samples/with_fixpoint_adv.rb +73 -0
- data/lib/HDLRuby/hdr_samples/with_leftright.rb +1 -1
- data/lib/HDLRuby/hdr_samples/with_of.rb +1 -1
- data/lib/HDLRuby/hdr_samples/with_program_c.rb +28 -0
- data/lib/HDLRuby/hdr_samples/with_program_ruby.rb +28 -0
- data/lib/HDLRuby/hdr_samples/with_program_ruby_cpu.rb +234 -0
- data/lib/HDLRuby/hdr_samples/with_program_ruby_io.rb +23 -0
- data/lib/HDLRuby/hdr_samples/with_program_ruby_mem.rb +58 -0
- data/lib/HDLRuby/hdr_samples/with_program_ruby_threads.rb +56 -0
- data/lib/HDLRuby/hdr_samples/with_sequencer.rb +17 -0
- data/lib/HDLRuby/hdr_samples/with_sequencer_channel.rb +58 -0
- data/lib/HDLRuby/hdr_samples/with_sequencer_enumerable.rb +10 -0
- data/lib/HDLRuby/hdr_samples/with_sequencer_enumerator.rb +18 -4
- data/lib/HDLRuby/hdr_samples/with_sequencer_func.rb +2 -4
- data/lib/HDLRuby/hdr_samples/with_sequencer_sync.rb +2 -1
- data/lib/HDLRuby/hdrcc.rb +72 -21
- data/lib/HDLRuby/hruby_error.rb +13 -0
- data/lib/HDLRuby/hruby_high.rb +125 -26
- data/lib/HDLRuby/hruby_low.rb +171 -3
- data/lib/HDLRuby/hruby_low2programs.rb +47 -0
- data/lib/HDLRuby/hruby_low_resolve.rb +3 -2
- data/lib/HDLRuby/hruby_low_without_namespace.rb +133 -5
- data/lib/HDLRuby/hruby_low_without_subsignals.rb +1 -1
- data/lib/HDLRuby/hruby_rcsim.rb +113 -6
- data/lib/HDLRuby/hruby_serializer.rb +2 -1
- data/lib/HDLRuby/hruby_verilog.rb +94 -20
- data/lib/HDLRuby/hruby_verilog_name.rb +3 -17
- data/lib/HDLRuby/std/clocks.rb +118 -50
- data/lib/HDLRuby/std/fixpoint.rb +2 -2
- data/lib/HDLRuby/std/function_generator.rb +1 -1
- data/lib/HDLRuby/std/linear.rb +7 -7
- data/lib/HDLRuby/std/sequencer.rb +263 -13
- data/lib/HDLRuby/std/sequencer_channel.rb +90 -0
- data/lib/HDLRuby/std/sequencer_func.rb +28 -15
- data/lib/HDLRuby/std/std.rb +6 -0
- data/lib/HDLRuby/ui/hruby_board.rb +1079 -0
- data/lib/HDLRuby/version.rb +1 -1
- data/lib/c/Rakefile +8 -0
- data/lib/c/cHDL.h +12 -0
- data/lib/c/extconf.rb +7 -0
- data/lib/rubyHDL.rb +33 -0
- data/tuto/gui_accum.png +0 -0
- data/tuto/gui_board.png +0 -0
- data/tuto/tutorial_sw.html +2263 -1890
- data/tuto/tutorial_sw.md +957 -62
- metadata +43 -5
- data/README.pdf +0 -0
- data/tuto/tutorial_sw.pdf +0 -0
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: HDLRuby
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lovic Gauthier
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2024-04-02 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -38,6 +38,20 @@ dependencies:
|
|
|
38
38
|
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '10.0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: rake-compiler
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.0'
|
|
48
|
+
type: :development
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.0'
|
|
41
55
|
description: HDLRuby is a library for describing and simulating digital electronic
|
|
42
56
|
systems. With this library it will possible to describe synthesizable hardware using
|
|
43
57
|
all the features of the Ruby language, e.g., object orientation, duck typing, closure.
|
|
@@ -59,7 +73,6 @@ files:
|
|
|
59
73
|
- LICENSE.txt
|
|
60
74
|
- README.html
|
|
61
75
|
- README.md
|
|
62
|
-
- README.pdf
|
|
63
76
|
- Rakefile
|
|
64
77
|
- bin/console
|
|
65
78
|
- bin/setup
|
|
@@ -100,6 +113,7 @@ files:
|
|
|
100
113
|
- lib/HDLRuby/hdr_samples/alu.rb
|
|
101
114
|
- lib/HDLRuby/hdr_samples/arith_bench.rb
|
|
102
115
|
- lib/HDLRuby/hdr_samples/bstr_bench.rb
|
|
116
|
+
- lib/HDLRuby/hdr_samples/c_program/echo.c
|
|
103
117
|
- lib/HDLRuby/hdr_samples/calculator.rb
|
|
104
118
|
- lib/HDLRuby/hdr_samples/case_bench.rb
|
|
105
119
|
- lib/HDLRuby/hdr_samples/comparison_bench.rb
|
|
@@ -113,6 +127,7 @@ files:
|
|
|
113
127
|
- lib/HDLRuby/hdr_samples/dff_override.rb
|
|
114
128
|
- lib/HDLRuby/hdr_samples/dff_properties.rb
|
|
115
129
|
- lib/HDLRuby/hdr_samples/dff_unit.rb
|
|
130
|
+
- lib/HDLRuby/hdr_samples/enum_as_param.rb
|
|
116
131
|
- lib/HDLRuby/hdr_samples/huge_rom.rb
|
|
117
132
|
- lib/HDLRuby/hdr_samples/if_bench.rb
|
|
118
133
|
- lib/HDLRuby/hdr_samples/include.rb
|
|
@@ -156,6 +171,11 @@ files:
|
|
|
156
171
|
- lib/HDLRuby/hdr_samples/rom.rb
|
|
157
172
|
- lib/HDLRuby/hdr_samples/rom_nest.rb
|
|
158
173
|
- lib/HDLRuby/hdr_samples/ruby_fir_hw.rb
|
|
174
|
+
- lib/HDLRuby/hdr_samples/ruby_program/echo.rb
|
|
175
|
+
- lib/HDLRuby/hdr_samples/ruby_program/stdrw.rb
|
|
176
|
+
- lib/HDLRuby/hdr_samples/ruby_program/sw_cpu_terminal.rb
|
|
177
|
+
- lib/HDLRuby/hdr_samples/ruby_program/sw_inc_mem.rb
|
|
178
|
+
- lib/HDLRuby/hdr_samples/ruby_program/sw_log.rb
|
|
159
179
|
- lib/HDLRuby/hdr_samples/seqpar_bench.rb
|
|
160
180
|
- lib/HDLRuby/hdr_samples/simple_counter_bench.rb
|
|
161
181
|
- lib/HDLRuby/hdr_samples/struct.rb
|
|
@@ -165,6 +185,7 @@ files:
|
|
|
165
185
|
- lib/HDLRuby/hdr_samples/system_open.rb
|
|
166
186
|
- lib/HDLRuby/hdr_samples/tuple.rb
|
|
167
187
|
- lib/HDLRuby/hdr_samples/type_minmax_bench.rb
|
|
188
|
+
- lib/HDLRuby/hdr_samples/with_board.rb
|
|
168
189
|
- lib/HDLRuby/hdr_samples/with_bram.rb
|
|
169
190
|
- lib/HDLRuby/hdr_samples/with_bram_frame_stack.rb
|
|
170
191
|
- lib/HDLRuby/hdr_samples/with_bram_stack.rb
|
|
@@ -172,6 +193,7 @@ files:
|
|
|
172
193
|
- lib/HDLRuby/hdr_samples/with_channel.rb
|
|
173
194
|
- lib/HDLRuby/hdr_samples/with_channel_other.rb
|
|
174
195
|
- lib/HDLRuby/hdr_samples/with_class.rb
|
|
196
|
+
- lib/HDLRuby/hdr_samples/with_clocks.rb
|
|
175
197
|
- lib/HDLRuby/hdr_samples/with_concat.rb
|
|
176
198
|
- lib/HDLRuby/hdr_samples/with_connector.rb
|
|
177
199
|
- lib/HDLRuby/hdr_samples/with_connector_memory.rb
|
|
@@ -180,6 +202,7 @@ files:
|
|
|
180
202
|
- lib/HDLRuby/hdr_samples/with_define_operator.rb
|
|
181
203
|
- lib/HDLRuby/hdr_samples/with_delay.rb
|
|
182
204
|
- lib/HDLRuby/hdr_samples/with_fixpoint.rb
|
|
205
|
+
- lib/HDLRuby/hdr_samples/with_fixpoint_adv.rb
|
|
183
206
|
- lib/HDLRuby/hdr_samples/with_fsm.rb
|
|
184
207
|
- lib/HDLRuby/hdr_samples/with_function_generator.rb
|
|
185
208
|
- lib/HDLRuby/hdr_samples/with_handshake.rb
|
|
@@ -192,11 +215,18 @@ files:
|
|
|
192
215
|
- lib/HDLRuby/hdr_samples/with_memory_rom.rb
|
|
193
216
|
- lib/HDLRuby/hdr_samples/with_multi_channels.rb
|
|
194
217
|
- lib/HDLRuby/hdr_samples/with_of.rb
|
|
218
|
+
- lib/HDLRuby/hdr_samples/with_program_c.rb
|
|
219
|
+
- lib/HDLRuby/hdr_samples/with_program_ruby.rb
|
|
220
|
+
- lib/HDLRuby/hdr_samples/with_program_ruby_cpu.rb
|
|
221
|
+
- lib/HDLRuby/hdr_samples/with_program_ruby_io.rb
|
|
222
|
+
- lib/HDLRuby/hdr_samples/with_program_ruby_mem.rb
|
|
223
|
+
- lib/HDLRuby/hdr_samples/with_program_ruby_threads.rb
|
|
195
224
|
- lib/HDLRuby/hdr_samples/with_reconf.rb
|
|
196
225
|
- lib/HDLRuby/hdr_samples/with_reduce.rb
|
|
197
226
|
- lib/HDLRuby/hdr_samples/with_ref_array.rb
|
|
198
227
|
- lib/HDLRuby/hdr_samples/with_ref_expr.rb
|
|
199
228
|
- lib/HDLRuby/hdr_samples/with_sequencer.rb
|
|
229
|
+
- lib/HDLRuby/hdr_samples/with_sequencer_channel.rb
|
|
200
230
|
- lib/HDLRuby/hdr_samples/with_sequencer_deep.rb
|
|
201
231
|
- lib/HDLRuby/hdr_samples/with_sequencer_enumerable.rb
|
|
202
232
|
- lib/HDLRuby/hdr_samples/with_sequencer_enumerator.rb
|
|
@@ -279,6 +309,7 @@ files:
|
|
|
279
309
|
- lib/HDLRuby/hruby_low2c.rb
|
|
280
310
|
- lib/HDLRuby/hruby_low2hdr.rb
|
|
281
311
|
- lib/HDLRuby/hruby_low2high.rb
|
|
312
|
+
- lib/HDLRuby/hruby_low2programs.rb
|
|
282
313
|
- lib/HDLRuby/hruby_low2seq.rb
|
|
283
314
|
- lib/HDLRuby/hruby_low2sym.rb
|
|
284
315
|
- lib/HDLRuby/hruby_low2vhd.rb
|
|
@@ -371,6 +402,7 @@ files:
|
|
|
371
402
|
- lib/HDLRuby/std/pipeline.rb
|
|
372
403
|
- lib/HDLRuby/std/reconf.rb
|
|
373
404
|
- lib/HDLRuby/std/sequencer.rb
|
|
405
|
+
- lib/HDLRuby/std/sequencer_channel.rb
|
|
374
406
|
- lib/HDLRuby/std/sequencer_func.rb
|
|
375
407
|
- lib/HDLRuby/std/sequencer_sync.rb
|
|
376
408
|
- lib/HDLRuby/std/std.rb
|
|
@@ -380,11 +412,16 @@ files:
|
|
|
380
412
|
- lib/HDLRuby/test_hruby_high.rb
|
|
381
413
|
- lib/HDLRuby/test_hruby_high_low.rb
|
|
382
414
|
- lib/HDLRuby/test_hruby_low.rb
|
|
415
|
+
- lib/HDLRuby/ui/hruby_board.rb
|
|
383
416
|
- lib/HDLRuby/v_samples/adder.v
|
|
384
417
|
- lib/HDLRuby/v_samples/dff.v
|
|
385
418
|
- lib/HDLRuby/v_samples/ram.v
|
|
386
419
|
- lib/HDLRuby/v_samples/rom.v
|
|
387
420
|
- lib/HDLRuby/version.rb
|
|
421
|
+
- lib/c/Rakefile
|
|
422
|
+
- lib/c/cHDL.h
|
|
423
|
+
- lib/c/extconf.rb
|
|
424
|
+
- lib/rubyHDL.rb
|
|
388
425
|
- makedoc
|
|
389
426
|
- metadata.yaml
|
|
390
427
|
- tuto/adder_sat_flags_vcd.png
|
|
@@ -401,6 +438,8 @@ files:
|
|
|
401
438
|
- tuto/clock_counter_vcd.png
|
|
402
439
|
- tuto/counter_ext_vcd.png
|
|
403
440
|
- tuto/fact_vcd.png
|
|
441
|
+
- tuto/gui_accum.png
|
|
442
|
+
- tuto/gui_board.png
|
|
404
443
|
- tuto/hw_flow.odg
|
|
405
444
|
- tuto/hw_flow.png
|
|
406
445
|
- tuto/maxxer_vcd.png
|
|
@@ -414,7 +453,6 @@ files:
|
|
|
414
453
|
- tuto/the_counter_vcd.png
|
|
415
454
|
- tuto/tutorial_sw.html
|
|
416
455
|
- tuto/tutorial_sw.md
|
|
417
|
-
- tuto/tutorial_sw.pdf
|
|
418
456
|
- tuto/tutorial_sw_jp.md
|
|
419
457
|
homepage: https://github.com/civol/HDLRuby
|
|
420
458
|
licenses:
|
|
@@ -436,7 +474,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
436
474
|
- !ruby/object:Gem::Version
|
|
437
475
|
version: '0'
|
|
438
476
|
requirements: []
|
|
439
|
-
rubygems_version: 3.
|
|
477
|
+
rubygems_version: 3.5.3
|
|
440
478
|
signing_key:
|
|
441
479
|
specification_version: 4
|
|
442
480
|
summary: HDLRuby is a library for describing and simulating digital electronic systems.
|
data/README.pdf
DELETED
|
Binary file
|
data/tuto/tutorial_sw.pdf
DELETED
|
Binary file
|