1) std_logic_vector(data_width - 1 downto 0)
In this code, I am not understanding (-1 downto 0). I know this is telling us that it is 8 bit. But Not understanding how? For example, (7 donwto 0) is self-explanatory eg. 0,1,2,3,4,5,6,7.
2) A_reg(data_width - 1 downto 1) <= A_reg(data_width - 2 downto 0);
I know we are left shifting. But can anyone explain how? I wanted to know how the bit position is changing or shifting.