Ruby-VPI is a Ruby interface to Verilog VPI. It lets you create
complex Verilog test benches easily and wholly in Ruby.
Web site: http://ruby-vpi.rubyforge.org
Install: gem install ruby-vpi
Version 13.0.0 (2006-12-27)
Summary
This release fixes a major instability bug, simplifies
generated Verilog benches, and purifies the API reference
documentation.
Notice
• The $ruby_init and $ruby_relay system task/functions
have been removed. Generated Verilog benches no longer
use them.
â–¡ To pass your own command-line options to Ruby, set
the RUBYOPT environment variable before running a
test.
New features
• You can now choose when Vpi::relay_verilog is
triggered: upon positive/negative edge of the clock
signal, or any other criteria. This is done by passing
a block to the RubyVpi::init_bench method (see the API
reference documentation for details).
Details
• Fixed a major instability bug that was randomly causing
segmentation faults and pthread assertion failures.
The problem was that the $ruby_init system task/
function was mischeviously unlocking a pthread mutex.
From then onward, all code assumed that the mutex was
still locked—but in reality, the mutex was already
unlocked.
• Replaced the $ruby_init and $ruby_relay system task/
functions with callbacks.
• Excluded internal stuff from the API reference
documentation for Ruby.
• Removed system-dependent path /usr/bin/ruby from the
tools.