FX`LENGTH-1的值为FX这个信号的长度减1;TMP:STD_LOGIC_VECTOR(FX`LENGTH-1 DOWNTO 0)则表示声明一个TMP信号,它是一个向量,长度为FX`LENGTH,标号从FX`LENGTH-1到0
函数to_unsigned( )是NUMERIC_STD程序包中的一个类型转换函数,to_unsigned(i, 3)的功能是将integer类型的对象i转换成unsigned类型,长度为3。所以,data <= std_logic_vector(to_unsigned(i, 3))实际上就是将integer类型数i转换成一个长度为3的无符号型的std_logic_vector类型值并赋给信号data。
这是个端口声明语句,端口的名称是"M",端口模式为输出端口,类型是std_logic型的数组,下标的范围是3,2,1,0。这个声明语句声明了一个有4根信号线的输出端口,名称为M,这4根线分别是M(3)、M(2)、M(1)和M(0)。
7 downto 0的意思是这个vector是个8位的信号 也可以写成0 to 7,在信号定义中,主要是为了声明这个信号的宽度 在使用中,也可以选取一个vector的任意几位 例如 signal INPUT : std_logic_vector(7 downto 0) := (others => '0');signal RESULT : std_logic_vector(3 downto 0) := (oth...