我要做的是获取std_logic_vector的一些位,然后对其进行符号扩展,然后将其声明为另一个std_logic_vector
让我们说以下
A : std_logic_vector(31 downto 0);
B : std_logic_vector(31 downto 0);
我想这样做:
A <= 000...0 & B(6 downto 0)
where "000...0" = 25 zeros
我的代码如下:
PC : IN STD_LOGIC_VECTOR(31 DOWNTO 0);
PC_ADD : OUT STD_LOGIC_VECTOR(31 DOWNTO 0);
---
--- Inside the architecture i do this
PC_ADD <= (6 DOWNTO 0 => PC(8 DOWNTO 2), (OTHERS => '0'));
我收到以下错误:
错误(10437):XXXXX.vhd的VHDL关联列表错误:位置错误 关联必须在命名关联之前列出