v0.4.5
This is a minor bugfix release and also includes updates to the ToriiTestCase
, which makes it now generally usable for testing and simulation.
Torii can be installed from the wheel attached or from PyPi
Added
- Added
-norom
and-proc
options to verilog generation if available in Yosys. - Added a small tutorial on using
platform.add_file
withInstance
for referencing external modules. - Added conversion helpers to/from picoseconds.
Changed
- Updated the minimum Yosys version to
0.15
. - Minor typing updates.
Value.matches
now returnsConst(1)
when no value is supplied.Platform.build
now allows for lists of strings to be passed for argument.- Invocations of
read_ilang
in Yosys scripts has been replaced withread_rtlil
asread_ilang
has been deprecated for a while now. - Replaced
sim_case
inToriiTestCase
withToriiTestCase.simulation
and added two attributes for defining the simulation domainToriiTestCase.comb_domain
andToriiTestCase.sync_domain
, the latter of which takes adomain =
param to specify which synchronous domain it is using. - The default platform in
ToriiTestCase
has been replaced withNone
, rather thanMockPlatform
- Gated the initialization of the
ToriiTestCase
dut
behind a check to prevent non-simulating tests, and tests that don't use the DUT from exploding. - Made the
connectors
property onPlatform
's optional, it now currently defaults to an empty list. - Updated rich dependency version from
~=12.6.0
to>=12.6.0
Deprecated
- Deprecated the current
torii.cli.*
methods in anticipation of replacing them.
Removed
- Removed remote SSH build support
- Removed
Value.__hash__
Fixed
- Corrected how environment variables were extracted making them more consistent.
- Fixed the
ToriiTestCase
so it's now properly functional - Clarified the usage of
Cat
in the language documentation, noting that it can take more than two arguments for concatenation. - Added a warning on potential off-by-one errors when invoking
Signal
with arange
and having the reset value be the same as the end of the range.