Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: s20030427
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 50 lines (31 sloc) 1.56 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49

ATTRIBUTES TO CONTROL SYNTHESIS

The following is a summary of Verilog attributes that Icarus Verilog
understands within Verilog source files to control synthesis
behavior. This section documents generic synthesis attributes. For
target specific attributes, see target specific documentation.

These attributes only effect the behavior of the synthesizer. For
example, the ivl_combinational will not generate an error message
if the Verilog is being compiled for simulation. (It may generate a
warning.)


* Attributes for "always" and "initial" statements

(* ivl_combinational *)

    This attribute tells the compiler that the statement models
    combinational logic. If the compiler finds that it cannot make
    combinational logic out of a marked always statement, it will
    report an error.

    This attribute can be used to prevent accidentally inferring
    latches or flip-flops where the user intended combinational
    logic.

(* ivl_synthesis_on *)

    This attribute tells the compiler that the marked always statement
    is synthesizable. The compiler will attempt to synthesize the
    code in the marked "always" statement. If it cannot in any way
    synthesize it, then it will report an error.

(* ivl_synthesis_off *)

    If this value is attached to an "always" statement, then the
    compiler will *not* synthesize the "always" statement. This can be
    used, for example, to mark embedded test bench code.


* Attributes for signals (wire/reg/integer/tri/etc.)

[ none defined yet ]


* Other Attributes

[ none defined yet ]
Something went wrong with that request. Please try again.