mirror of
https://github.com/myhdl/myhdl.git
synced 2024-12-14 07:44:38 +08:00
27 lines
1.2 KiB
Plaintext
27 lines
1.2 KiB
Plaintext
MyHDL co-simulation relies on Unix-style interprocess communication.
|
|
To run co-simulation on Windows, compile and use all tools involved
|
|
(including Python itself) on a Unix-like environment for Windows, such
|
|
as cygwin.
|
|
|
|
For co-simulation with Icarus, a working Icarus installation is required,
|
|
so that the commands 'iverilog' and 'vvp' are available.
|
|
|
|
Run the Makefile by typing 'make'. This should generate a 'myhdl.vpi'
|
|
PLI module. Install it in an appropriate location, where 'vvp' can
|
|
find it. Note that you can use the '-m' flag to vvp to specify the PLI
|
|
module path.
|
|
|
|
To test whether it works, go to the 'test' subdirectory and run the
|
|
tests with 'python test_all.py'.
|
|
|
|
For co-simulation with MyHDL, 'vvp' should be run with the 'myhdl.vpi'
|
|
PLI module, and the Verilog code should contain the appropriate calls
|
|
to the '$to_myhdl' and 'from_myhdl' tasks.
|
|
|
|
The 'myhdl.vpi' module was developed and verified with Icarus 0.7.
|
|
|
|
Between snapshot 20030518 (used in MyHDL 0.3), and 20031009, the
|
|
Icarus scheduler has been improved. This requires a small update of
|
|
myhdl.c. The current version is supposed to work with recent snapshots
|
|
- the older version is available in myhdl_20030518.c
|