Re: Section 4.1, Section 5.2.2.1 and Section 5 in general

Alain RAYNAUD (alain_raynaud@mentorg.com)
Tue, 23 Feb 1999 10:08:29 +0100

>It just doesn't suffice if the tool gives a warning (Synopsys just
>issues a warning only in case of example#1 and does not issue warnings
>for example 2 & 3. I dont know what warnings are issued in Exemplar or
>BuildGates). In all these examples the synthesis results in an invertor with a
>feedback loop. This is incorrect.

I don't agree on this. In my opinion, the synthesis tool is correct in
generating an inverter with a feedback loop. I don't even believe any warning
should be displayed. Well, maybe in the extremely simple case you described, a
tool such as lint could warn the (potentially) beginner that what he coded
probably wasn't what he intended.

But there are plenty of valid designs which contain loops the way you describe
them. They are valid designs. Think in terms of false paths. Sometimes signal A
is needed to compute signal B. In another state of the design, it's the
opposite: signal B is used to compute signal A. If you look at the schematics,
you will see a loop. But the loop itself is never activated - at least if the
designer coded the whole thing right.

You can't decide that synthesis tools should reject such constructs. There are
perfectly valid.

Alain.

-- 
-----------------------------------------------------------------------
 Alain RAYNAUD                                            META SYSTEMS 
 R&D Logic Design Team                                          LP 853
                                   3 Avenue du Canada - Batiment Sigma
 Tel: (33) 01 64 86 61 69             91975 Courtaboeuf Cedex - FRANCE
 E-Mail: Alain_Raynaud@mentor.com             Fax: (33) 01 64 86 61 61
-----------------------------------------------------------------------