Suraj, Happy to help :)
I spent last weekend playing around RubyVPI (using GPLCVER as simulator) and you've done an excellent job in disguising all of the VPI uglyness with nice, usable classes. I wanted to ask you, exactly what are the goals of this project? I am interesting in building a fully open verification enviroment that would at least be feature-compatible with current SystemVerilog implementations. Ruby gives us Classes for free, that's the most major feature of SV already. Currently missing features are: - constraints (although I see there are several ruby-based constraint solvers available, I have not yet explored them) - assertions (I am referring to SVA, a temporal assertion language that models assertion FSMs .. May be difficult to implement, but perhaps something similar can be developed with a more ruby-like syntax) - functional coverage (For interesting signals/buses, define "bins" with ranges of values. Anytime bus value changes, increment appropriate bin.. At the end of simulation, you can see how many times interesting values were hit. Should be straight-forward to implement) - code coverage (I believe this has to be implemented in the simulator) - interfaces (probably impossible in RTL without simulator support, but may be possible in some form inside verif enviroment) I work in the industry (I'm an ASIC Verification Engineer, coming from Mentor and Cadence tools mostly but I've used all of the big 3), and I think a verification enviroment that implements the above in a free way would go a long way towards both lowering costs in professional situations and allowing hobbyists access to professional-level tools. --Mike -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Suraj N. Kurapati Sent: Tuesday, March 25, 2008 3:29 PM To: Discussion list for the Ruby-VPI project Subject: Re: ArgumentError "VpiHigh" is not a valid VPI property Mikhail Ravkine wrote: > It can be solved by editing "counter_design.rb" and changing all > instances of "High!" to "t!" and "Low!" to "f!" You are correct; thanks for posting this solution. I must have forgotten to update the examples properly after I the deprecated high! and low! methods in favor of the t! and f! methods. I will make a new release this week containing your solution. Cheers.