Если вы действительно хотите отменить вектор, вам нужно использовать вектор, для которого определены определенные свойства. В частности:
- некоторое представление о числовом значении (поэтому вы не можете использовать
bit_vector
или std_logic_vector
, которые являются просто наборами битов)
- некоторое понятие "знак"
Из пакета ieee.numeric_std
вы должны использовать для этого тип signed
:
use ieee.numeric_std.all;
...
variable a,b:signed(8 downto 0);
...
a := "000000001";
b := -a;