string - 在 Verilog 中将 ASCII 字符分配给连线

标签 string ascii verilog system-verilog

我知道您可以在 Verilog 测试台中声明一个字符串,如下所示:

reg [8*14:1] string_value;  

initial 
    string_value = "Hello, World!";

然后我可以用这个字符串做一些事情,比如使用 $display在测试台上显示它。

当我将模块闪存到我的 FPGA 时,我没有成功地在模块中做同样的事情:
reg [8*14:1] string_value;  

always @(reset) 
begin
    string_value = "Hello, World!";
    // Do stuff with string value

即使分配单个值也不起作用:
reg [8:1] char_value;  

always @(reset) 
begin
    char_value = "A";
    if (char_value == 8'h41)
        // Do stuff!

我想将 8 位总线上的单个字符转移到 LCD 屏幕上进行显示。

如何在 Verilog 中处理字符串?

最佳答案

您可以将字符串分配给寄存器类型。任何说其他话的人都是错的。您可能希望使您的寄存器基于 0' 以使其正常工作。我已经在真正的 FPGA 中做到了这一点,并且可以正常工作。

关于string - 在 Verilog 中将 ASCII 字符分配给连线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9028084/

相关文章:

verilog - 如何使用 ModelSim 查看波形中定点数的实际值? (系统Verilog)

verilog - 什么是在编译时抛出错误的 LINT/综合安全语句?

javascript - 如何在 Type Script/Java Script 中将字符串数组值合并到对象数组中的特定属性

c - 在 C 中传递数组的一部分

c++ - C/C++ : How to convert 6bit ASCII to 7bit ASCII

.net - 手动在ASCII和.NET字符之间转换

Verilog:部分选择或索引部分选择无法应用于内存

C 用另一个替换字符数组中的一个字符

python - 如何使用python从元组中删除特定字符

java - 用于转换 native2ascii 的库,反之亦然