doc/history.yaml in ruby-vpi-16.0.1 vs doc/history.yaml in ruby-vpi-17.0.0

- old
+ new

@@ -1,5 +1,74 @@ - + Version: 17.0.0 + + Date: 2007-07-22 + + Record: | + This release makes the Ruby-VPI testing framework more lightweight by reducing the number of files and parameters involved. + + + h2. Caution + + * The *generate_test.rb* and *convert.rb* executables have been replaced by a single *ruby-vpi* executable to avoid name conflicts with other software. They are now accessed using the <pre>ruby-vpi generate</pre> and <pre>ruby-vpi convert</pre> commands respectively. + + * The <tt>--name</tt> parameter has been removed from the automated test generator. Similarly, you can no longer insert an arbitrary name in a test's file names (see the "user manual":manual.html#Do_not_rename_generated_files for details). + + * The @DEBUG@ environment variable, which controls wether the test runner starts the interactive debugger, has been renamed to @DEBUGGER@. + + * The @SIMULATOR_TARGET@ and @SIMULATOR_INCLUDES@ parameters have been eliminated from test runners. The former is detected automatically. As for the latter, you can specify paths to directories in the @SIMULATOR_SOURCES@ parameter instead. + + * The <tt>bench.rb</tt> and <tt>bench.v</tt> files of a generated test are (1) no longer generated by the test generator and (2) are now ignored. You must move the functionality provided by these files into <tt>design.rb</tt> and your Verilog module's source file respectively. + + * The <tt>design.rb</tt> and <tt>proto.rb</tt> files are now loaded into a separate namespace (Ruby module). For example, if the Verilog module under test has the name "counter" and the <tt>design.rb</tt> file defines a class named "Foo", then that class will be accessible as "Counter::Foo". + + * The global @Vpi::simulate@ method has been replaced by the @cycle!@ method in the <tt>design.rb</tt> file. + + * The @simulate!@ method in the <tt>proto.rb</tt> file has been renamed to @feign!@ for accuracy. + + * The @RubyVpi@ module has been renamed to @RubyVPI@. + + * RSpec >= 1.0.0 is now required by Ruby-VPI. + + * The "project license":readme.html#intro.license has been further simplified. + + + h2. Repairs + + * Restored support for Enumerable methods in @Vpi::Handle@. + + * The specification now begins to execute at simulation time 0. Previously it began at simulation time 1. + + + h2. Improvements + + * The <tt>bench.rb</tt> and <tt>bench.v</tt> files of a generated test have been eliminated! + + One important benefit is that the Ruby interface to the Verilog module under test is now a direct reference, whereas previously it was an _indirect_ reference (it pointed to the Verilog module defined in <tt>bench.v</tt>, which in turn wrapped around the actual Verilog module under test). + + As a result, you can now access the internals of the Verilog module under test by simply calling methods on the Ruby interface, as you would naturally expect to be the case. + + * The "a" accessor, which returns an _array_ of child handles, has been added to "the method naming format":manual.html#tbl:accessors for accessing child handles. + + * All parameter objects in the Verilog module under test are automatically made available as constants. For example, if the Verilog module under test has the name @counter@ and has a parameter object named @WIDTH@, then you can access the integer value of that parameter using @Counter::WIDTH@. + + * The automated test generator now tries to automatically detect the clock and reset signal from Verilog module declarations. + + * The automated test generator now supports Verilog 95 style module declarations. + + * Exceptions are now raised when you try to write to a read-only VPI property, such as @VpiName@. + + * Added @high?@, @high!@, @low?@, and @low!@ methods to the @Vpi::Handle@ class. + + * Revised the user manual by removing unnecessary sections and adding newer material from my master's thesis. + + + h2. Contributions + + * Added Jacinto Shy II's "register file example":http://jacintoshy.blogspot.com/2007/05/hacking-verilog-with-ruby-part-2.html to Ruby-VPI. It can be found in <tt>samp/register_file/</tt>. + + +- Version: 16.0.1 Date: 2007-05-27 Record: |