Section 9.2 (page 96) of the System Verilog 3.1a LRM says:
"Statements in an always_comb shall not include those that block, have
blocking timing or event controls,
or fork...join statements."
However, the BNF seems to allow productions that reduce to event
controls, fork-join statements, wait
statements etc. Here is the BNF snippet:
always_construct ::= always_keyword statement
always_keyword ::= always | always_comb | always_latch | always_ff
statement ::= [ block_identifier : ] { attribute_instance } statement_item
statement_item ::=
| /(other productions)/
*| *par_block*
|* procedural_timing_control_statement*
| *wait_statement
| /(other productions)
/I think the production for statement_item should be split as into 2
parts and the control jumps
to the appropriate rule depending on the context.
Thanks,
- Krishna.
Received on Mon Jun 28 02:41:45 2004
This archive was generated by hypermail 2.1.8 : Mon Jun 28 2004 - 02:42:25 PDT