小编Moh*_*ana的帖子

在VHDL中.....如何计算向量的前导零?

我在VHDL项目中工作,我面临着计算向量长度的问题.我知道有一个矢量的长度属性,但这不是我正在寻找的长度.例如,我有std_logic_vector

    E : std_logic_vector(7 downto 0);  
Run Code Online (Sandbox Code Playgroud)

然后

    E <= "00011010";
Run Code Online (Sandbox Code Playgroud)

所以,len = E'length = 8但我不是在寻找这个.我想len在丢弃最左边的零后计算,所以len = 5;

我知道我可以通过从左到右检查"0"位来使用for循环,如果出现"1"位则停止.但这并不高效,因为我有1024或更多位,这将减慢我的电路.那么有没有任何方法或算法以有效的方式计算长度?例如使用log(n)级门的组合门,(其中n =比特数).

fpga vhdl

5
推荐指数
1
解决办法
5783
查看次数

标签 统计

fpga ×1

vhdl ×1