From: craigselton@... (Craig Selton) Date: 2003-04-01T06:58:42+09:00 Subject: Re: Announce: RHDL-0.4.2 (Ruby HDL) an agile HDL Jan Decaluwe wrote in message news:<3E8813F1.502D4ED8@jandecaluwe.com>... > Craig Selton wrote: > > > > This looks interesting. You've managed to make a standard scripting > > language look convincingly like an HDL. I've seen some other similar > > efforts recently (like one that uses Python) but, while interesting, > > they don't end up looking like an HDL - in most cases they end up > > forcing the HDL designer to learn a totally different style. > > At least for MyHDL (my Python HDL attempt that you refer to), this > should > not be the case. Just substitute "while 1" for "process" or "always", > and "yield" for "wait", and you're done :-) Also, see the section > on RTL modeling in the MyHDL manual. First off, I didn't mean to dis MyHDL... But, as an HDL developer I must say that I prefer not having to do that mental substitution if I don't have to. RHDL's syntax just looks more natural, I guess, but I'm sure MyHDL's approach has merits. > > Moreover, I believe emphasis on superficial syntax similarities can > make things confusing, as the semantics may still be different. > For example, the very first "process" example in the RHDL manual has > a global sensitivity list *and* an internal wait statement, something > which is forbidden in VHDL. It's forbidden for good reasons I believe, > because if I try to imagine how this is supposed to work, I get > thoroughly confused .. > I kind of see your point, but on the other hand after reading the explanation I can kind of see how that particular process with wait works. I'm not sure how you would use that behavior in a real life model (I would have to think about it) but I suppose it might be nice to have that option. So I'm not sure I would disallow the use of wait inside of a process with a sensitivity list. -Craig