• 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. Cannot pass parameters from virtuoso sch. into Verilog ...

Stats

  • Locked Locked
  • Replies 13
  • Subscribers 125
  • Views 23007
  • 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

Cannot pass parameters from virtuoso sch. into Verilog module

Pavel47
Pavel47 over 13 years ago

 Hello,

 I've met problem while passing parameter value, specified on the schematic.

Here is Verilog module:

module Pixel_v0 (input Din, CLK, output Dout );
   parameter SEED = 33;
   integer INTSEED=SEED;
   reg [15:0] DATA;
   assign Dout = DATA[15];

//   initial DATA = $random(INTSEED);
   initial DATA = INTSEED;
  

   generate
      genvar  i;
      for (i = 0; i < 15; i=i+1) begin: DFF
     if (i==0)
       always @(posedge CLK)
         DATA[i] <= Din;
     always @(posedge CLK)
       DATA[i+1] <= DATA[i];
      end
   endgenerate

endmodule

On the picture on attachment I shoved concrned instance (with parameter value = 15) and signal waveform. As you can constate, the initial DATA value is 33 (as spicified inside of verilog module), but not 15 (as sppecified in schematic).

Where is a problem.

Thanks in advance.

Pavel. 

  • PassVerParam_problem.png
  • View
  • Hide
  • Cancel
Parents
  • Pavel47
    Pavel47 over 13 years ago

     Thanks for answer Andrew,

    I googled for a solution and found a hint on the Designer's Guide Forum. Here is it:

     You can either do it through the library manger or through SKILL.

    Lib. Mgr.:
    - Right Mouse click over the desired view
    - Properties
    - [Edit -> Create...]
    - View Property Editor
    - Add
    - hnlVerilogCDFdefparamList <dataType> <value>

    SKILL:

    d_cvId = dbOpenCellViewByType( t_libName t_cellName t_viewName nil "a" )
    dbCreateProp( d_cvId "hnlVerilogCDFdefparamList" "<dataType>"  <value> )
    dbSave( d_cvId )
    dbClose( d_cvId )

    Bern

    Concerned cell has 2 views - symbol and verilog. Where should I add hnlVerilogCDFdefparamList propery ?

    In the initiall message the guy mentionned that  hnlVerilogCDFdefparamList must be added on the switched master of the instance cell. Unfortunately I ignore what doest switched master mean. The post dates 2007, so it's improbable, that I will be answered.

    Regards.

    Pavel.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Pavel47
    Pavel47 over 13 years ago

     Thanks for answer Andrew,

    I googled for a solution and found a hint on the Designer's Guide Forum. Here is it:

     You can either do it through the library manger or through SKILL.

    Lib. Mgr.:
    - Right Mouse click over the desired view
    - Properties
    - [Edit -> Create...]
    - View Property Editor
    - Add
    - hnlVerilogCDFdefparamList <dataType> <value>

    SKILL:

    d_cvId = dbOpenCellViewByType( t_libName t_cellName t_viewName nil "a" )
    dbCreateProp( d_cvId "hnlVerilogCDFdefparamList" "<dataType>"  <value> )
    dbSave( d_cvId )
    dbClose( d_cvId )

    Bern

    Concerned cell has 2 views - symbol and verilog. Where should I add hnlVerilogCDFdefparamList propery ?

    In the initiall message the guy mentionned that  hnlVerilogCDFdefparamList must be added on the switched master of the instance cell. Unfortunately I ignore what doest switched master mean. The post dates 2007, so it's improbable, that I will be answered.

    Regards.

    Pavel.

    • 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