From: ptkwt@...1.aracnet.com (Phil Tomson) Date: 2002-09-20T05:42:00+09:00 Subject: ANNOUNCE: RHDL 0.3.0 After a long break, I finally started working on RHDL again... With version 0.3.0 RHDL moves a little bit closer to being an actual, usable Hardware Description Language. Most notably, design hierarchy is now supported and a 'wait' statement has been added so that processes can be suspended until a condition becomes true. From the README: RHDL - Ruby Hardware Description Language RHDL looks similar to VHDL - there are signals and concurrent processes which can have sensitivity lists and can be suspended using wait statements. In the examples subdirectory you'll find a couple of examples with Test::Unit testcases. The example in testdesign.rb file defines a counter which increments on the rising edge of clk. It also has a synchronous reset so that if the rst signal is high on the rising edge of clk, counter gets reset to 0. To run the testdesign example: > ruby testdesign.rb The input vectors and expected output for this testcase are contained in the file 'count_test_data'. There is also a testTB.rb example which shows how to do hierarchy and structural style in RHDL. NOTE: You'll need the Test::Unit module to run these examples. I believe that Test::Unit is built into Ruby 1.7, but for 1.6 you'll need to download the package from http://testunit.talbott.ws/ and follow the included instructions for installing it. STATUS: 0.3.0: * Hierarchy is now working. * Structural design style is now working and illustrated in examples/testTB.rb * wait statement added which allows processes to be suspended until a given condition becomes true. * converted examples in examples subdir to use Test::Unit instead of Runit See TODO file for future directions. If you have questions you can send them to me at: rubyfan@programmer.net Phil