Hi All, @ comes from PSL. Quoting IEEE 1850-2010: 6.2.1.2 Clocked FL properties The FL clock operator operator(@), shown in Syntax 6-18, provides a way to clock an FL Property. FL_Property ::= FL_Property @ Clock_Expression The first operand is the FL Property to be clocked. The second operand is a Boolean expression with which to clock the FL Property. The @ operator specifies that the clock expression that is its right operand defines the clock context of its left operand. Hence with '@', we are not introducing a new operator, just recycling the one from PSL. Personally I prefer expressive code and am not fond of either '@' or "after" since they do not mention Clk. Who knows though, if the "C/C++" style behavioral synthesis takes hold, maybe we no longer need to specify clock in our designs. Just waiting for someone to do a decent VHDL behavioral synthesis tool. OTOH, I am not convinced we need any syntax for this. When you start looking at adding reset, we do not have anything that is all that much better than: Q <= D when rising_edge(Clk) ; Q <= '0' when not nReset else D when rising_edge(Clk) ; Q <= '0' when not nReset and rising_edge(Clk) else D when rising_edge(Clk) ; Ok, so you loose the pipelining, however, maybe that is what we need the operator for. If I want more concise, but less expressive code, I can always switch to using a procedure: Reg(Clk, D, Q) ; RegAr(Clk, not nReset, D, Q) ; RegSr(Clk, not nReset, D, Q) ; RegR(Clk, not nReset, D, Q) ; -- default reset style choosen by selecting/compiling a particular package body. RegPipe(Clk, D, Q, 5) ; Some of the reset issues would be simplified if synthesis tools provided a mechanism for shifting reset styles. Jim -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Jim Lewis VHDL Training Expert, SynthWorks IEEE 1076 VHDL Working Group Chair Open Source VHDL Verification Methodology (OSVVM), Chief Architect and Co-founder 1-503-320-0782 Jim@SynthWorks.com http://www.SynthWorks.com VHDL Training on leading-edge, best coding practices for hardware design and verification. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Thu Mar 27 13:26:48 2014
This archive was generated by hypermail 2.1.8 : Thu Mar 27 2014 - 13:27:05 PDT