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

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.

So now there are two Ruby hardware definition languages

http://web.comlab.ox.ac.uk/oucl/work/geraint.jones/ruby/

Mikkel

In article 3d8a4f47$0$49669$edfadb0f@dspool01.news.tele.dk,

···

MikkelFJ mikkelfj-anti-spam@bigfoot.com wrote:

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.

So now there are two Ruby hardware definition languages

http://web.comlab.ox.ac.uk/oucl/work/geraint.jones/ruby/

Mikkel

Yeah, I suppose it could be confusing… I hope they don’t sue us :wink:
Anyone know if the other Ruby HDL from the early 90’s is still in use?

Phil