I'm trying to do this:
Or more specifically, trying to see if a slice of my array of enum types is uniformly equal to a certain value.
I've tried these both:
But for some reason ary1(7 downto 5) always comes up with only single element.
What is the proper way to do this?? I can't seem to find much more information on array slices.
Code:
type enum1 is (None, Up, Down, Both);
type type1 is array (7 downto 0) of enum1;
signal ary1: type1 := (others => None);
remaining: for k in 7 downto 0 generate
requests_up(k) <= '1' when ary1(ary1'high downto k) = (others => None) else '0';
end generate remaining;
Or more specifically, trying to see if a slice of my array of enum types is uniformly equal to a certain value.
I've tried these both:
Code:
ary1(7 downto 5) = (7 downto 5 => None)
ary1(7 downto 5) = (others => None)
But for some reason ary1(7 downto 5) always comes up with only single element.
What is the proper way to do this?? I can't seem to find much more information on array slices.