3

有人可以解释以下代码行的作用吗?谷歌搜索没有发现任何有用的东西。

data_count <= (others => ’0’);

谢谢!

4

2 回答 2

4

它将 data_count 的所有元素设置为'0'

data_count 的数据类型将是一个元素数组,可以是'0'bit_vector、或。如果您的信号 data_count 有四位,这将相当于编写:std_logic_vectorsignedunsigned

data_count <= "0000";

优点是您不必计算位数。

您还可以将某些元素设置为“1”,然后将其余元素设置为“0”:

data_count <= (1 => '1', 3 => '1', others=>'0');
于 2013-06-18T14:28:57.363 回答
2

此语句将所有元素设置为'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" ;

于 2013-06-18T14:29:42.487 回答