I'm not sure what is the most frequent cause of errors, but since the simple types can be detected by lint tools, they don't worry me so much. Lint tools are a standard part of our methodology. Synthesis compilers also do these checks. Much more problematic and the big advantage of 'unique' in my mind is the situation where the designer erroneously believes the case items are mutually exclusive and they are not checkable by lint tools. Then I need a run-time check. Sometimes a model checker can check it, but that can be much more difficult. Shalom > In my experience, the main cause of decision statement > mismatches between > pre- and post-synthesis models is stupid typos in the RTL > select statements > and redundancies in casez/casex decisions with don't care bits. > By > specifying a 'unique' decision, both of these types of modeling > errors can > most likely be detected statically at compile time. Lint > checkers have been > doing that for years and years, and there is no reason > simulation compilers > cannot perform the same checks. The few decision overlaps that > cannot be > detected statically can almost certainly be detected during run > time by > simply evaluating all decision branches and warning about > duplicates before > executing the first matching branch. That is all that a > 'unique case' or > 'unique if' needs to do to make this designer happy. Let's not > make a > mountain out of a molehill!Received on Sun Mar 19 01:03:17 2006
This archive was generated by hypermail 2.1.8 : Sun Mar 19 2006 - 01:03:47 PST