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: |