next up previous contents
Next: Assignments to arrays Up: Vectors and vector operators Previous: Array subranges   Contents

Assignments to vectors

Assignments may also be made to vectors of signals. When a value is assigned to a vector, the following rules apply:

For example,

        [x,y] := [1,1,0];
is equivalent to

        x := 1;
        y := 0;

That is, the leftmost (high order) bit is dropped to make the vectors the same length.

On the other hand

        [x,y] := 1;
is equivalent to

        x := 0;
        y := 1;
since the integer is coerced to a vector, and then truncated to length 2.

The assignment

        [x,y,z] := [1,0];
is equivalent to

        x := 0;
        y := 1;
        z := 0;
since the vector on the right-hand-side is zero-extended.

Important note: A vector of signals may not be assigned a nondeterministic value.



2002-10-28