首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >BIT_VECTOR与位数组的区别

BIT_VECTOR与位数组的区别
EN

Stack Overflow用户
提问于 2018-06-08 18:15:53
回答 1查看 922关注 0票数 -2

我开始为我的大学考试学习VHDL语言,我有一个问题: BIT_VECTOR类型和位数组之间的区别是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-08 19:13:31

如上所述,here

bit_vector是一维数组类型,元素的类型为

。bit_vector类型是在标准包中预定义的。语法:

type bit_vector is array (natural range <>) of bit; 

这也可以在IEEE1076-2008标准的第5.3.2.3节“预定义数组类型”中找到。

编辑:我没有完成。bit_vector预定义的(无约束) bit数组。但由于牛是一种动物,但并不是每种动物都是牛,所以你可以有更多的类型。由于VHDL是强类型的,这意味着您不能在没有强制转换函数的情况下简单地将不同类型连接在一起。

参见下面的示例代码:

entity e is end entity;
architecture a of e is
    signal s1 : bit_vector(0 downto 0);
    type own_bit_vector is array(natural range <>) of bit;
    signal s2 : own_bit_vector(0 downto 0);
begin
    -- next line doesn't work
    --s2 <= s1;
    -- "Error: D:/Hdl/BitVector/BitVector.vhd(7):
    --   Signal "s1" is type std.STANDARD.BIT_VECTOR;
    --   expecting type own_bit_vector."

    -- but this is allowed
    process(s1) begin
        for i in s1'range loop
            s2(i) <= s1(i);
        end loop;
    end process;
end architecture;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50758402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档