3

I have:

integer test[7:0];

but I cannot do:

test[0] = 0;

or

assign test[0] = 0;

or

intial
begin
test[0]=0;
end

or

integer test[7:0] = {0,0,0,0,0,0,0,0,0};

Any ideas? Just using 0 as an example, I need it to be 26, 40, 32, 18, 50, 0, 20, 12

1 Answer 1

4

Are you sure initial doesn't work (you might have a typo in there...)?

initial begin
  for(int i=0; i<8; i++) begin
    test[i] = i;
  end
  $display(test[4]);
end

In systemverilog, something like the following will work. These are known as "Assignment Patterns":

integer test[7:0] = '{26, 40, 32, 18, 50, 0, 20, 12}; // note the '

I doubt either of the above are synthesisable, except maybe when targeting an FPGA.

Sign up to request clarification or add additional context in comments.

2 Comments

Does i need to be declared?
the i is declared in the for statement, although it should actually be integer i.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.