... | ... | @@ -51,10 +51,19 @@ complex modules. |
|
|
- Replace deep if-then statements by state machine
|
|
|
- Resets synchronized: use as on data input of registers
|
|
|
- State machine recover from illegal states
|
|
|
|
|
|
<!-- end list -->
|
|
|
|
|
|
- at minimum, check that the following naming conventions of
|
|
|
inputs/outputs signals in your module(s) are followed:
|
|
|
- input signal should finish with \_i, output with \_o,
|
|
|
bidirectional with \_b
|
|
|
- asynchronous signals should have *a* before \_i/\_o/\_b in their
|
|
|
names
|
|
|
- signals that are pulses, should have *pX* in their names, where
|
|
|
X is the width of the pulse, e.g. single-cycle pulse should have
|
|
|
*p1* in its name
|
|
|
- examples of non-clear code
|
|
|
- if your code is auto-generated (e.g. by wbgen2) do not modify it
|
|
|
unless you are really sure what you do (usually, this never happens)
|
|
|
- State copyright and license in all files, see example
|
|
|
- Set a signal, use value on line afterwards (takes 'previous'
|
|
|
value). Behavior would be different if it was a variable
|
|
|
|
... | ... | |