array of instances with a different parameters

Guest
Hi

I'm trying use array of instances with a different parameters for
example
---------------------------------------------------------------------------------------------------
input_buffer i_input_buffer [1:0] (.A(A[23:0]) ,
.Z(Z[23:0]));

defparam i_input_buffer[0].WIDTH = 8;
defparam i_input_buffer[1].WIDTH = 16;
----------------------------------------------------------------------------------------------------

but ncverilog inform ERROR

ncelab: *E,CAOIPS (file.v,71|29): port has different sizes in different
instances of this array.
.A (A),

nchelp ncelab CAOIPS output is :

--------------------------------------------------------------------------------------------------------------------------
nchelp: 05.60-s003: (c) Copyright 1995-2006 Cadence Design Systems,
Inc.
ncelab/CAOIPS =
The formal port for the indicated expression has different sizes in
different instances within the instance array. Port sizes must be
consistent for all instances in an instance array.

My question

Do you have any idea how to set different parrameter to different
instances in array of instances ?

Thanks
 
You can set different parameters. The array of instances doesn't like
the widths changes on it. If the parameters you're entering affect the
port width, it's easy to confuse the rules for arrays of instances.

Use a generate (for) statement instead and your problems go away.


m.4me2you@gmail.com wrote:
Hi

I'm trying use array of instances with a different parameters for
example
---------------------------------------------------------------------------------------------------
input_buffer i_input_buffer [1:0] (.A(A[23:0]) ,
.Z(Z[23:0]));

defparam i_input_buffer[0].WIDTH = 8;
defparam i_input_buffer[1].WIDTH = 16;
----------------------------------------------------------------------------------------------------

but ncverilog inform ERROR

ncelab: *E,CAOIPS (file.v,71|29): port has different sizes in different
instances of this array.
.A (A),

nchelp ncelab CAOIPS output is :

--------------------------------------------------------------------------------------------------------------------------
nchelp: 05.60-s003: (c) Copyright 1995-2006 Cadence Design Systems,
Inc.
ncelab/CAOIPS =
The formal port for the indicated expression has different sizes in
different instances within the instance array. Port sizes must be
consistent for all instances in an instance array.

My question

Do you have any idea how to set different parrameter to different
instances in array of instances ?

Thanks
 

Welcome to EDABoard.com

Sponsor

Back
Top