【发布时间】:2013-06-18 14:25:15
【问题描述】:
谁能解释下面这行代码的作用? 谷歌搜索没有找到任何有用的东西。
data_count <= (others => ’0’);
谢谢!
【问题讨论】:
标签: vhdl
谁能解释下面这行代码的作用? 谷歌搜索没有找到任何有用的东西。
data_count <= (others => ’0’);
谢谢!
【问题讨论】:
标签: vhdl
它将 data_count 的所有元素设置为'0'。
data_count 的数据类型是可以是'0' 的元素数组,例如bit_vector、std_logic_vector、signed 或unsigned。如果你的信号 data_count 有四位,这相当于写:
data_count <= "0000";
优点是您不必计算位数。
您还可以将某些元素设置为“1”,然后将其余元素设置为“0”:
data_count <= (1 => '1', 3 => '1', others=>'0');
【讨论】:
该语句将所有元素设置为'0'
您也可以将此语句用作others => '1' 这会将元素设置为'1'
假设 data_count 是一个 std_logic_vector( 6 downto 0 ) ,
那么 data_count 将被分配为data_count <= "0000000"
假设你写data_count <= (5 => '1' , others => ’0’);
并且 data_count 假设是一个 std_logic_vector( 7 downto 0 ) ,这意味着第 6 位是 1,其余的是 0 即
data_count <= "00100000" ;
【讨论】: