• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. Regarding verilogA model of a discrete time delay free ...

Stats

  • Locked Locked
  • Replies 1
  • Subscribers 125
  • Views 16209
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Regarding verilogA model of a discrete time delay free integrator

VivekNITg
VivekNITg over 8 years ago

Hi,

I am trying to implement a delay free integrator with transfer function = 1/(1-Z^-1) using the model writer of the cadence virtuoso  the corresponding generated code is mentioned below.

Problem: When an input sampled signal of 1kHz and 900 microV ( = V_peak) is applied the output of the integrator is cosine but with output magnitude from 0 to 73 mV.  Is there any problem with code or is there any special setting is required. If the input is 100 mV (= V_peak) then output of the integrator is in kVs.

Please help.

I am attaching screenshots of the schematic and transient response of the integrator (bottom is integrator output while top one is sample and hold output  )

//     FUNCTION: Z-domain Filter
//      VERSION: $Revision: 2.8 $
//       AUTHOR: Cadence Design Systems, Inc.
//
// GENERATED BY: Cadence Modelwriter 2.31
//           ON: Thu Feb 02 08:59:10 IST 2017
//
// Description:  N degree Transfer functions of  H(z)
//    May be specified as a Polynomial or as Poles and Zeros.
//
//    Complex Poles and Zeros must have conjugates.
//
//
//    This model is an example, provided "as is" without express or
//    implied warranty and with no claim as to its suitability for
//    any purpose.
//
// PARAMETERS:
//   first = Delay before taking first sample [S]
//    samp = Sampling period [S]
//   trans = Transtion time [S]
//

`include "discipline.h"
`include "constants.h"

//  model ztrans



//   Z-domain in Numerator-Denominator form
//   Filter order is:  1 / 2
 
module ztrans (vin, vout);
  input vin;
  output vout;
  electrical vin, vout;
  parameter real samp = 3.90u from (0:inf);      



//               nxN  is  numerator of degree N.
//               dxN  is  denominator of degree N.
  parameter real nx0 = 1.0;
  parameter real dx0 = 1.0;
  parameter real dx1 = -1;

    analog begin
        V(vout) <+  zi_nd( V(vin), { nx0 },
                 { dx0, dx1 }, samp);
    end

endmodule

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    If this is still an issue for you, I suggest you take it up with customer support, since there's not enough information here to figure out (at least not without a lot of blind experiments) what you've done.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 8 years ago

    If this is still an issue for you, I suggest you take it up with customer support, since there's not enough information here to figure out (at least not without a lot of blind experiments) what you've done.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information