Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20705 Discussions

port slicing in custom SOPC builder component

Altera_Forum
Honored Contributor II
888 Views

I want to have a component that splits a single avalon streaming input into multiple avalon streaming outputs. 

 

I have attached the VHDL and _hw.tcl script to do this. 

Both are pretty simple. 

 

The problem is that SOPC builder appears to not be smart enough to understand the way I have done the port slicing in the streaming output. 

 

I only have a single named output port in the VHDL code, but use arrays to turn the single names into multiple ports, eg. 

 

-- Avalon streaming source 

aso_ready : in std_logic_vector(NUM_OUTPUTS - 1 downto 0); 

aso_valid : out std_logic_vector(NUM_OUTPUTS - 1 downto 0); 

aso_data : out std_logic_vector((NUM_OUTPUTS*PIXEL_BW) - 1 downto 0); 

aso_startofpacket : out std_logic_vector(NUM_OUTPUTS - 1 downto 0); 

aso_endofpacket : out std_logic_vector(NUM_OUTPUTS - 1 downto 0) 

 

SOPC builder does not complain when I instantiate the component, and displays the correct number of ports (which is a user provided parameter). 

When I hit the generate button, I get the following errors: 

 

Error: avalon_stream_splitter_0: Port aso_ready( 0 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_valid( 0 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_data( 7 downto 0 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_startofpacket( 0 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_endofpacket( 0 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_ready( 1 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_valid( 1 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_data( 15 downto 8 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_startofpacket( 1 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_endofpacket( 1 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_ready( 2 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_valid( 2 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_data( 23 downto 16 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_startofpacket( 2 ) in TCL description is not found in the design file 

Error: avalon_stream_splitter_0: Port aso_endofpacket( 2 ) in TCL description is not found in the design file 

 

Is there a way to do what I am trying to do here? 

See the source code attached (very short and simple).
0 Kudos
0 Replies
Reply