contents.gifindex.gif

Feedback Specification - .Q and .FB

The .Q and .FB dot extensions both specify that the associated flip-flop is the source of the feedback signal, but
the polarity of the resulting feedback signal may differ depending on other declarations in the design. Existing
ABEL modules originally targeting other PLD architectures may include architecture-specific declarations
defining the polarity of the PLD's outputs. The figure below demonstrates the difference.

webpack00000001.gif

The first macrocell has an inverted output pin, but the second macrocell has a non-inverted output pin. The
output inversion in the first diagram is declared using the istype 'invert' attribute in ABEL-HDL. The second
diagram is declared using istype 'buffer' (the default). In the inverted diagram, the .Q feedback dot extension is
the complement of the .FB dot extension; while in the non-inverted diagram, the two dot extensions are identical.

When a signal is declared using istype'invert' and that signal is referenced using the .Q extension in an equation,
the sense of the signal will be inverted in that equation.

Xilinx CPLDs do not have an inversion at the output pin. The declaration istype'invert' is not required for CPLDs,
but it is honored when .Q feedback is used to maintain behavioral compatibility for existing ABEL modules that
originally targeted PLDs with inverted outputs.
 


See Also

Feedback Without Dot Extensions

Feedback Normalization

State Diagram Feedback in Equations

Istypes