gpt4 book ai didi

memory - VHDL - 如何优雅地初始化 std_logic_vector 数组?

转载 作者:行者123 更新时间:2023-12-04 13:44:37 24 4
gpt4 key购买 nike

我正在尝试连接到经典的 HD44780 LCD。
我已经实现了本地 ram,我将希望显示在显示器上的数据写入其中。

我以这种方式定义了 ram:

type ram_type is array (0 to (16*2)-1) of std_logic_vector(7 downto 0);
signal lcd_mem : ram_type;

我试过以这种方式初始化 ram:
lcd_mem(0 to 6) <= x"45_72_72_6F_72_73_3A";
...

但是我收到一个关于合成的错误:

Error (10515): VHDL type mismatch error at display_ber.vhd(74): ram_type type does not match string literal



有没有办法以类似的方式优雅地初始化 ram 块?

也许我应该改用字符串类型?

最佳答案

就在这里。请注意,您对 ram_type 的定义是 std_logic_vector 的数组.和 x"45_72_72_6F_72_73_3A"是一个十六进制字符串文字。这些不是同一类型,因此您的错误。

因此,您必须将该值放入一个向量数组中。如:

lcd_mem(0 to 6) <= (0 => x"45", 1 => x"72", 2 => x"72", 3 => x"6F", 4 => x"72", 5 => x"73", 6 => x"3A");

关于memory - VHDL - 如何优雅地初始化 std_logic_vector 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37499567/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com