HDLRuby 2.11.2 → 2.11.4
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/README.md +6 -2
- data/ext/hruby_sim/hruby_rcsim_build.c +325 -73
- data/ext/hruby_sim/hruby_sim.h +11 -1
- data/ext/hruby_sim/hruby_sim_calc.c +11 -8
- data/ext/hruby_sim/hruby_sim_core.c +8 -6
- data/ext/hruby_sim/hruby_sim_tree_calc.c +14 -0
- data/ext/hruby_sim/hruby_value_pool.c +6 -4
- data/lib/HDLRuby/hdr_samples/repeat_bench.rb +48 -0
- data/lib/HDLRuby/hruby_high.rb +11 -6
- data/lib/HDLRuby/hruby_low.rb +27 -17
- data/lib/HDLRuby/hruby_low2c.rb +26 -7
- data/lib/HDLRuby/hruby_rcsim.rb +119 -74
- data/lib/HDLRuby/hruby_rsim.rb +10 -1
- data/lib/HDLRuby/hruby_rsim_vcd.rb +15 -0
- data/lib/HDLRuby/hruby_verilog.rb +71 -58
- data/lib/HDLRuby/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5b3303f28a79a14a42fb2421335afdbaa40c148440e622edaca2f8a98804192d
|
4
|
+
data.tar.gz: 12dd7c5fd160141c151db950b7d797ef53bf012549ef983f8cf1b648edb3a85e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 94ba5098e5e8003f64c53f86ba47f8e831e3e49d39aa4f8991f3595dfec560749079720a6602bf76f2e31eacf88c922a0c689bf575e2ec17a48256dba70010d0
|
7
|
+
data.tar.gz: 1856330cc10987e979ed13211d3a6aaaa1f382bfe9a6831a4a235eac35ea912844c5ca9b667f2a899b87a47518c29e38cb8c9b7c6a5ee27e953872fb810b8f30
|
data/README.md
CHANGED
@@ -1949,15 +1949,19 @@ There are two kinds of such statements:
|
|
1949
1949
|
!10.ns
|
1950
1950
|
```
|
1951
1951
|
|
1952
|
-
- The `repeat` statements: such a statement takes as argument a
|
1952
|
+
- The `repeat` statements: such a statement takes as argument a number of iteration and a block. The execution of the block is repeated the given number times. For example, the following code executes 10 times the inversion of the `clk` signal every 10 nanoseconds:
|
1953
1953
|
|
1954
1954
|
```ruby
|
1955
|
-
repeat(10
|
1955
|
+
repeat(10) do
|
1956
1956
|
!10.ns
|
1957
1957
|
clk <= ~clk
|
1958
1958
|
end
|
1959
1959
|
```
|
1960
1960
|
|
1961
|
+
__Note:__
|
1962
|
+
|
1963
|
+
This statement is not synthesizable and therefore can only be used in timed behaviors.
|
1964
|
+
|
1961
1965
|
### Parallel and sequential execution
|
1962
1966
|
|
1963
1967
|
Time behaviors are by default sequential, but they can include both parallel and
|