1
\$\begingroup\$
module queues;

  bit [7:0] a[$];

  bit [7:0] d_array[];  

initial begin
  for (int i=0; i<140; i++) 
  a.push_back(i);
  
  a.push_back(140);
  
  a.push_front(144);
  
  foreach(a[i]) $display("\tValue of a[%0d]=%0d",i , a[i]);

  $display("----- Queue size is %0d  -----",a.size());

end
  
  initial begin

    d_array = { >> {a}};
    
    $display(" Dynamic array = %0p ", d_array);
  end

  
endmodule

Error: design.sv:19: sorry: Streaming concatenation not supported. Exit code expected: 0, received:

  1. I want to copy my queue 'a' into dynamic array and print it.
  2. Next, I want to copy my dynamic array into another queue (b).
  3. Then copy this queue (b) partially into queue (c) and print it and implement "Access Random queue Entry".
\$\endgroup\$
6
  • 2
    \$\begingroup\$ You are using Icarus Verilog which has very limited support for SystemVerilog. Use another simulator. \$\endgroup\$
    – dave_59
    Commented Feb 27, 2021 at 7:57
  • \$\begingroup\$ Thanks dave, it worked with other simulator. \$\endgroup\$ Commented Feb 27, 2021 at 9:37
  • 1
    \$\begingroup\$ I wonder how Dave knew you used Icarus? Good question though \$\endgroup\$ Commented Feb 28, 2021 at 6:45
  • 1
    \$\begingroup\$ @ShashankVM edaplayground.com \$\endgroup\$
    – dave_59
    Commented Mar 1, 2021 at 4:06
  • \$\begingroup\$ Hi @dave_59, can you please explain what this line of code does: d_array = { >> {a}}; \$\endgroup\$
    – penguin99
    Commented Feb 22, 2023 at 6:45

1 Answer 1

1
\$\begingroup\$

As @dave_59 said, the problem is due to using a simulator in which the function is not supported.

Reading the error message gives us a hint:

Error: design.sv:19: sorry: Streaming concatenation not supported. Exit code expected: 0, received:

The first error is on line 19, and the error message is "Streaming concatenation not supported". This suggests that the line of code might be valid in SystemVerilog, but is not supported on that simulator.

\$\endgroup\$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.