0

我以前没有在 Xilinx 中使用过块存储器概念。我想把一些简单的数字放在一个文本文件中并保存。然后将这些数字乘以 2 并保存在另一个文件中。我已经编写了 VHDL 代码,但这涉及 I/O,所以我必须使用块 RAM。但我对此一无所知。我已经阅读了教程和数据表,但仍然无法弄清楚如何使用 BRAM 完成我的任务。我正在用这个问题粘贴我的代码。如果我们必须为 BRAM 进行某种编程,请告诉我。当我尝试编译代码时,它显示错误 inFIle 不存在。

在此处输入图像描述

4

1 回答 1

0

VHDL 不是编程语言。

VHDL 中有一些类似编程语言的特性(例如文件 IO),但这些特性只是为了帮助编写用于仿真的测试台代码。写 VHDL 时,不要考虑编码软件。考虑一下您要描述的硬件结构。

在硬件中,没有“文件”之类的东西。有一个硬件接口,由固定信号(地址、数据、使能)组成,连接到例如块 RAM。您可以通过指定地址从内存中读取一个数据字,但这始终是原始数据。

要将原始数据输入块 RAM,几乎总会有一些软件进程在嵌入式或外部 CPU 上运行。CPU 上运行的软件可以解释文件系统,并将硬件辅助处理的相关信息传递给硬件内核(例如,待处理数据在内存中的起始地址、数据长度、算法参数化等)。 . 或者,可能存在通过硬件进行处理的流数据源和接收器。

这是硬件最擅长的:处理连续的数据流并对每个数据字执行相同的计算集。

于 2013-12-19T10:02:47.113 回答