Guest
Is it possible to use aggregates to perform the inverse of this
concatenation operation:
signal d : std_logic_vector(11 downto 0);
signal a1, b1, c1 : std_logic_vector(3 downto 0);
d <= a1 & b1 & c1;
With something like this:
signal a2, b2, c2 : std_logic_vector(3 downto 0);
(a2, b2, c2) <= d;
This syntax doesn't work, as the signals are vectors, not std_logic. I
probably just don't have the syntax right. I'd like to use this method
as it is less error prone than the following, especially if lengths are
changed later:
a2 <= d(11 downto 8);
b2 <= d(7 downto 4);
c2 <= d(3 downto 0);
Thanks,
Brian
concatenation operation:
signal d : std_logic_vector(11 downto 0);
signal a1, b1, c1 : std_logic_vector(3 downto 0);
d <= a1 & b1 & c1;
With something like this:
signal a2, b2, c2 : std_logic_vector(3 downto 0);
(a2, b2, c2) <= d;
This syntax doesn't work, as the signals are vectors, not std_logic. I
probably just don't have the syntax right. I'd like to use this method
as it is less error prone than the following, especially if lengths are
changed later:
a2 <= d(11 downto 8);
b2 <= d(7 downto 4);
c2 <= d(3 downto 0);
Thanks,
Brian