( ESNUG 464 Item 7 ) -------------------------------------------- [03/30/07]

From: Frank Chen <fchen=user domain=micron not palm>
Subject: Cadence NC-Verilog SDF annotation won't work on bi-directionals

Hi John,

I have a question regarding Cadence NC-Verilog 5.6/5.8 SDF timing annotation
on input nets connecting to bi-directional primitives such as tran, rtran,
etc.  To make things more clear, let me give you an example:

  module A (input a, output b);
  B instance_b (a, c);
  assign b = c;
  endmodule

  module B (inout a, inout c);
  tran (a, c);
  endmodule

When I'm trying to perform an input port annotation hierarchically on A.a,
the annotation would not work!  No errors nor warning at all!  The timing
refused to be annotated unless I add an additional buffer before module B,
modifying the code to:

  module A (input a, output b);
  wire d;
  buf instance_b (d, a);
  B instance_b (d, c);
  endmodule

I understand that primitive bi-directional switches do not allow timing to
be annotated, but in my case, I'm annotating the input node *before* the
primitive, yet it is still not annotated unless a uni-directional gate is
placed in front?  Do you know if this is a bug in Cadence?

I have not had the chance to test this on Synopsys VCS.

    - Frank Chen
      Micron Semiconductor                       Shanghai, China
Index    Next->Item







   
 Sign up for the DeepChip newsletter.
Email
 Read what EDA tool users really think.


Feedback About Wiretaps ESNUGs SIGN UP! Downloads Trip Reports Advertise

"Relax. This is a discussion. Anything said here is just one engineer's opinion. Email in your dissenting letter and it'll be published, too."
This Web Site Is Modified Every 2-3 Days
Copyright 1991-2024 John Cooley.  All Rights Reserved.
| Contact John Cooley | Webmaster | Legal | Feedback Form |

   !!!     "It's not a BUG,
  /o o\  /  it's a FEATURE!"
 (  >  )
  \ - / 
  _] [_     (jcooley 1991)