对于这个问题,请考虑我有以下信号,并使用了Synopsis包std_logic_unsigned和std_logic_arith.
signal o : std_logic;
signal i : std_logic_vector(parameter downto 0);
constant c : integer := 5;
Run Code Online (Sandbox Code Playgroud)
我希望将o信号设置为结果的最左边位(i-c).在一个过程中我有类似的东西:
o <= (i-c)(i'left);
Run Code Online (Sandbox Code Playgroud)
哪个不能在我的模拟器中编译.
我知道我可以通过引入一个中间变量来解决这个问题,但是有一个语法结构可以直接执行吗?
vhdl ×1