Bit-select
 Block Statements
 Built-in Primitives
 Case Statement
 Continuous Assignments
 Conversion Functions
 Compiler Directives
 Concatenations
 Conditional Operator
 Delays
 Disable Statement
 Edge Sensitive Path
 Expression Bit Length
 File I/O Functions
 Functions
 Identifiers
 If Statement
 Integer Constants
 Intra-assignment Timing Controls
 Keywords
 Loop Statements
 Memories
 min:typ:max Delays
 Module Declaration
 Module Instantiation
 Module Path Declaration
 Module Path Polarity
 Net Data Types
 Operators
 Parameters
 Part-select
 Probabilistic Distribution Functions
 Procedural Assignments
 Procedural Continuous Assignments
 Procedural Timing Control
 Range Specification
 Real Constants
 Register Data Types
 Simulation Time Functions
 Specify Block
 State Dependent Path
 Strengths
 Strings
 Structured Procedures
 UDP Declaration
 UDP Instantiation
 UDP State Table
 Value Change Dump (VCD) File
 Vectors

Module Path Polarity

Formal Definition

Module path polarity describes when a signal is inverted or not driving propagation between the source and the destination .

Simplified Syntax

+=> positive simple module path polarity

-=> negative simple module path polarity

+*> positive multiple module path polarity

-*> negative multiple module path polarity

Description

The polarity of the module is a description of what happens when a signal is propagated from the source to the destination. There are three possible polarities of the module.

• Unknown polarity

• Positive polarity

• Negative polarity

Positive polarity is specified by the + prefix. When positive polarity is specified, simple rules apply: a rise at the source causes a rise transition at the destination and a fall transition at the source causes the fall transition at the destination. (Example 1)

Negative polarity is specified by the - prefix. When negative polarity is specified, the rules applied are similar to those from positive polarity. However, a rise transition at the source causes fall transition at the destination, and a fall transition at the source causes a rise transition at the destination. (Example 2)

When no prefix is specified with => or *> operators, it means that unknown polarity is to be used by default. In this case a rise transition at the source may cause a rise, a fall, or no transition at the destination. The same rule applies for the fall transition. (Example 3)

Examples

Example 1

(DataIn +=> DataOut) = DataIn_to_DataOut ;
(DataIn +*> DataOut) = DataIn_to_DataOut ;

Positive polarity.

Example 2

(DataIn -=> DataOut) = DataIn_to_DataOut ;
(DataIn -*> DataOut) = DataIn_to_DataOut ;

Negative polarity.

Example 3

(DataIn => DataOut) = DataIn_to_DataOut ;
(DataIn *> DataOut) = DataIn_to_DataOut ;

Default unknown polarity.

Important Notes

• By default, unknown polarity is specified.

• Module path polarity is used by a timing analysis tool and is ignored by the simulator.