[myhdl-list] A question of philosophy?
Brought to you by:
jandecaluwe
From: Haitao Z. <ha...@gm...> - 2005-03-02 20:27:30
|
It seems to me there are three different demands put on HDLs: hardware description itself is mostly declarative (in the sense they describe structural relationship that can not directly execute on a sequential program semantics); but it also has a time axis to it (even though hardware can only be structural some times it is more convenient to be able to pretend that we can specify it by defining what we want along the time axis); AND at times we want to add a imperative component to it: think of parameter evaluation, conditional generation, or even like myhdl that natively supports simulation. There is tension in language design if one wants to do all three well. The "normal" HDLs lack a strong support for the last aspect, while Python is a inherently sequential language and makes the first (structural) aspect harder to carry out (?) without some contortion along the way (the tension between declaration, partial eval, and evaluation). I don't know if there is a good solution, but I wonder if Jan or anyone else has given this question some thoughts. (I am not a CAD or software engineer so pardon me if I butchered the terminologies here.) Haitao |