# \[ANN\] Ruby-VPI 14.0.0

**URL:** <https://www.ruby-forum.com/t/ann-ruby-vpi-14-0-0/80849>\
**Category:** Ruby\
**Created:** [December 31, 2006, 5:28am UTC](https://www.ruby-forum.com/t/ann-ruby-vpi-14-0-0/80849 "2006-12-31T05:28:56Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![snk](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/d9b06d/32.png) [@snk](https://www.ruby-forum.com/u/snk)\
**Post date:** [December 31, 2006, 5:28am UTC](https://www.ruby-forum.com/t/ann-ruby-vpi-14-0-0/80849/1 "2006-12-31T05:28:56Z")

</div>

Ruby-VPI is a Ruby interface to IEEE 1364-2005 Verilog VPI.  
It lets you create complex Verilog test benches easily and  
wholly in Ruby.

â€¢ [http://ruby-vpi.rubyforge.org](http://ruby-vpi.rubyforge.org)

â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”

Version 14.0.0 (2006-12-30)

Summary

This release adds support for simulation callbacks, renders  
Verilog benches fully simplified, and revises the user  
manual to reflect major changes.

Notice

â€¢ The Vpi::relay\_verilog method has been replaced by  
Vpi::simulate.

```
Please update you tests accordingly, because invoking
the Vpi::relay_verilog method directly will cause your
tests to freeze/hang.

```

â€¢ Verilog benches no longer contain any clock generation  
code. They are now mere skeletons, whose only purpose  
is to instantiate the design under test.

```
The clock generation code is now contained in the Ruby
bench.

```

New features

â€¢ The RubyVpi::init\_bench method now gives you complete  
control over performing a clock/operation/whatever  
cycle for your design. This feature allows you to work  
with multi-clocked designs.

â€¢ Callbacks are now supported through the  
Vpi::vpi\_register\_cb method. See the callbacks section  
in the user manual for details.

â€¢ Added the Vpi::advance\_time method, which makes the  
Verilog simulator simulate a given number of time  
steps.

â€¢ Added the Vpi::simulation\_time method, which gives you  
the current simulation time as a 64-bit integer.

Details

â€¢ Removed the monkey patch for the SWIG va\_list  
problemâ€”it no longer occurs.

â€¢ Cleansed the appearance of the user documentation.  
â–¡ Added indices to section headings, just like LaTeX.  
â–¡ Admonition boxes no longer interfere with  
surrounding text, and they donâ€™t have big gap above  
them.  
â–¡ Navigation menu is now elastic (fluid layout).

â€¢ Revised the user manual and added new content.  
â–¡ Moved â€œVPI utility layerâ€ section from background  
chapter into usage chapter in user manual.  
â–¡ Added a nice introduction to entire manual with  
links to reference documentation.
