UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Adventurer
Adventurer
146 Views
Registered: ‎03-03-2011

Parameter Defaults to bitstring?

Hello,

I'm trying to package an IP in Vivado which has a couple of top level paramters as such:

parameter integer Param1 = {32'h02, 32'hff}; // just an example

I used to be able to do this in ISE/EDK (don't know if its a parser issue), but now it seems like the concatenation operation returns a bitstring, which leads to another error:

 [IP_Flow 19-343] User Parameter 'Param1 (Param1)': Default value "0x0x000000020x000000FF" does not match format "bitString"

Notice the double "0x" at the start of the concatenation result. I can't find anything on this behaviour and suspect its an issue with the IP packager.

Any help?

Thank you

 

0 Kudos
3 Replies
Scholar markcurry
Scholar
100 Views
Registered: ‎09-16-2009

Re: Parameter Defaults to bitstring?

Are you enabling SystemVerilog in Vivado?

An "integer" in verilog2001 is "at least 32-bits".

An "integer" in SystemVerilog is exactly 32 bits.  

Either way, I wouldn't think it's a good idea to cast that parameter as an integer. (Your value is 64 bits)

What do you get if you remove the "integer" type of the parameter?  (An untyped parameter is defined as being "as big as it needs to be".)

Or try setting the parmeter type to bit [ 63 : 0 ], or bit [ 1 : 0 ] [ 31 : 0  ] (SystemVerilog only).

Regards,

Mark

0 Kudos
Adventurer
Adventurer
77 Views
Registered: ‎03-03-2011

Re: Parameter Defaults to bitstring?

Hello,

I get the same result without the "integer" typing. Any concatenation result is interpreted as a bitstring by the IP packager.

bandit

0 Kudos
Scholar markcurry
Scholar
73 Views
Registered: ‎09-16-2009

Re: Parameter Defaults to bitstring?

Ah, it wasn't clear to me that the problems were with the IP packager.

Vivado Synthesis should handle your code fine.  We use concatenation of parameters, even parameters with structured types, and arrays - the tools handles all of that fine.

IP packager however, is another thing.  I can't really help you there (we don't use the tool at all).  From what I know, you need to keep things quite basic language wise at least at the periphery.

Regards,

Mark

0 Kudos