blob: b8b72b83c16e8ffac1dba63643b2d15ccba9b088 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
entity ent8 is
generic (
WIDTH : natural := 1);
end;
architecture ent of ent8 is
type data_t is record
t1 : bit_vector;
t2 : bit_vector;
end record;
type bv_array_t is array (natural range <>) of data_t;
subtype bv_array1_t is bv_array_t(open)(t1(WIDTH - 1 downto 0));
subtype bv_array2_t is bv_array1_t(open)(t2(WIDTH - 1 downto 0));
procedure write_data (constant c : bv_array2_t) is
begin
for i in c'range loop
report integer'image(i) & " =>" & to_string(c(i).t1);
end loop;
assert c(1).t1(0) = '1'; -- <<<<<====== This should not fail
end procedure;
begin
process
variable data2 : bv_array2_t(0 to 1);
begin
data2(0).t1 := "0";
data2(0).t2 := "1";
data2(1).t1 := "1";
data2(1).t2 := "0";
write_data(data2);
wait;
end process;
end ent;
|