Re: [myhdl-list] MEP 107 assessment
Brought to you by:
jandecaluwe
From: Christopher F. <chr...@gm...> - 2012-06-07 19:11:45
|
On 6/5/2012 3:52 PM, Jan Decaluwe wrote: > I have read and thought about MEP 107. Here is my initial > assessment. > > This MEP is strictly about conversion. This is explained in > the first paragraph, but I think it should be mentioned in > the title also, because this has proven to be an eternal source > of confusion. It should be made clear that all modeling > aspects being discussed are supported by MyHDL as it is today. All aspects being discussed are almost supported for modeling today. It has been reported that the @always_comb decorator fails to extract the sensitivity list if a signal is buried in a structure. I have 4 examples below that demonstrate the issue (a control and 3 fails). There is the limitation that the structures cannot be used on the right hand side currently (at lest for the version of 0.8dev I tested this with). In [76]: x = Signal(False) ...: y = Signal(False) ...: con1 = {'x':Signal(False)} ...: con2 = [Signal(False), 'gibberish', Signal(intbv(0, min=-234, max=19987))] ...: class Container(object): x = Signal(False) ...: con3 = Container() ...: In [77]: @always_comb ...: def sim_sig(): ...: x.next = y ...: In [78]: @always_comb ...: def sim_con1(): ...: x.next = con1['x'] ...: --------------------------------------------------------------------------- AlwaysCombError Traceback (most recent call last) ... AlwaysCombError: sensitivity list is empty In [79]: @always_comb ...: def con2(): ...: x.next = con2[0] ...: --------------------------------------------------------------------------- AlwaysCombError Traceback (most recent call last) .. AlwaysCombError: sensitivity list is empty In [80]: @always_comb ...: def sim_con3(): ...: x.next = con3.x ...: --------------------------------------------------------------------------- AlwaysCombError Traceback (most recent call last) ... AlwaysCombError: sensitivity list is empty Regards, Chris F. |