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: 
Contributor
Contributor
230 Views
Registered: ‎10-01-2010

ComMsgMgrException: invalid index for scalar '%s': Invalid c_string in format.

Jump to solution

I've found what appears to be an internal error in Vivado 2019.1 synthesis. The message occurs when trying to index a non-arrayed signal with multidimensional indices in SystemVerilog. In the attached TAR are three top-level modules (test_1d.sv, test_2d.sv and test_fixed.sv) and an interface (test_ifc.sv). In the latter is the signal definition:

logic vld_in;

In test_1d.sv, the signal is erroneously referenced with one array index:

always_ff @(posedge ifc.clk) begin
   vld[0] <= ifc.vld_in[0];
end

If I try to synthesize this, Vivado gives a decipherable error message (though it'd be better if it said "ifc.vld_in"):

ERROR: [Synth 8-373] invalid index for scalar 'ifc_vld_in_vld_in' [/home/tcl/invalid_index/test_1d.sv:12]

In test_2d.sv, the signal is erroneously referenced instead with two array indices:

always_ff @(posedge ifc.clk) begin
   vld[0] <= ifc.vld_in[0][0];
end 

This outputs an internal exception and a cryptic message which gives no clue where the error lies, rendering it useless:

ComMsgMgrException: invalid index for scalar '%s': Invalid c_string in format.
ERROR: [Synth 8-373] invalid index for scalar '%s'

I'd like to have this test case forwarded to the Vivado development team for fixing. The three top-level modules can be synthesized with the following commands:

vivado -mode batch -source synth.tcl -tclargs test_1d
vivado -mode batch -source synth.tcl -tclargs test_2d
vivado -mode batch -source synth.tcl -tclargs test_fixed

Thanks for your help!

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Xilinx Employee
Xilinx Employee
190 Views
Registered: ‎07-21-2014

Re: ComMsgMgrException: invalid index for scalar '%s': Invalid c_string in format.

Jump to solution

Hi,

 

Thanks for pointing out the error.

I could reproduce the issue at my end and will report it to development to be fixed in a future release.

 

-Shreyas

----------------------------------------------------------------------------------------------
Try to search answer for your issue in forums or xilinx user guides before you post a new thread.

Kindly note- Please mark the Answer as "Accept as solution" if information provided solves your query.
Give Kudos (star provided in right) to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
1 Reply
Highlighted
Xilinx Employee
Xilinx Employee
191 Views
Registered: ‎07-21-2014

Re: ComMsgMgrException: invalid index for scalar '%s': Invalid c_string in format.

Jump to solution

Hi,

 

Thanks for pointing out the error.

I could reproduce the issue at my end and will report it to development to be fixed in a future release.

 

-Shreyas

----------------------------------------------------------------------------------------------
Try to search answer for your issue in forums or xilinx user guides before you post a new thread.

Kindly note- Please mark the Answer as "Accept as solution" if information provided solves your query.
Give Kudos (star provided in right) to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

View solution in original post

0 Kudos