Dhiraj, Those restrictions have been changed - please check the latest LRM (Section 23), which includes significant changes to that section. At any rate, even according to P1800-2005, there is no such thing as an assignment to a clocking-block variable, the only operator defined on such objects is the synchronous drive that uses the <= syntax. So your example is incorrect. There also no signal named outp in the scope of the program so there's at least another error. Arturo From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of Dhiraj Kumar Prasad Sent: Tuesday, June 03, 2008 10:27 PM To: sv-bc@eda.org; sv-cc@eda.org Cc: Dhiraj Kumar Prasad Subject: [sv-bc] Query related with clocking block declared inside program block. Hi, I have a query related with the clocking block declaration in program block. Please see the example below. module top(input in1 ); program pblk1 (input sclk); clocking c_s @(posedge sclk); output #1ns outp ; endclocking initial c_s.outp = #1ns in1 + 2; //should it be allowed?? endprogram pblk1 I1 (in1); endmodule Now to drive the clocking block output, we have to use synchronous drive(<=/non-blocking) but according to LRM,P1800-2005,section 16.2,program block variable should be assign through blocking assignment so what should be the status of above testcase?? should it be positive?? Thanks, Dhiraj -- This message has been scanned for viruses and dangerous content by MailScanner <http://www.mailscanner.info/> , and is believed to be clean. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jun 4 00:18:51 2008
This archive was generated by hypermail 2.1.8 : Wed Jun 04 2008 - 00:20:27 PDT