[ANN] Ruby-VPI 13.0.0

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.