|
|
1
0
在开始为FPGA(尤其是复杂算法)编写VHDL之前,您应该做两件事:
您可以在VHDL中使用file-I/O来初始化FPGA内存(RAM/ROM)或在模拟构造中。但不适用于实时数据处理应用程序。正如我在评论中所说:普通FPGA在硬接线块中没有文件输入/输出功能。如果您想要这样的东西,可能最好使用微控制器/CPU或SOC FPGA,它在板上有一个硬接线ARM内核,并在软件中执行此操作。但当您在那里时,为什么要使用FPGA呢? 代码中的错误您的代码中有几个编程错误,如果您遵循一些教程,就可以很容易地避免这些错误。 关于第一个错误,我想问你是否有编程经验。您定义了一个类型,接下来可能需要定义一个新类型的对象。但您键入了一些非法代码:
解析器如何知道
应如何进行的示例:
下一个错误:流程没有敏感度列表。A.
在内部,流程实际上有一个触发条件:
那怎么办?你怎么了 可以 是读取文件并初始化数组。(请注意,合成中不支持多维数组,因为没有多维RAM,所以您必须展平数组并执行一些索引算法)。对于下一个示例,我创建了一个文件“test.bin”,并用字符串“12345678”=8个字符=8*8位=256位=2*2*16位->适用于2×2阵列。
那么你应该意识到
示例代码:
瞧
最大的问题我最大的问题是:当你犯了这些编程错误时,你怎么会获得电信和嵌入式系统的博士学位?或者对FPGA的性能缺乏了解。我自己也是一名电气工程博士研究生,这是我们教一年级学士学生的东西。当我想要我的博士职位时,我经历了几轮评估,在那里我的知识得到了广泛的测试。这些职位竞争激烈。 我的建议是:实现这一点,请获得当地的支持。你不想在接下来的3年里把博士学位花在学习VHDL上,然后发现你只有1年的时间来做一些实际的研究,以便能够发布结果。。。 |
|
|
2
0
这个问题太不具体了,但这里有几个要点。 二进制文件I/O在VHDL中工作,但只能保证与自身兼容,即您可以读取模拟最初编写的文件。除此之外,您可能需要进行实验。 我读过Modelsim中的第三方文件,几乎没有什么惊喜(可能是意外的端点,我记不起来了),我希望GHDL也能很好地工作。 然而,Xilinx ISIM(在ISE10.1时代)坚持在每个文件上看到一个特定的二进制头,其格式Xilinx即使在明确要求时也拒绝记录。
我从ISIM写了一个文件,检查了它的内容,并将该文件的头黑客攻击到我需要读取的图像文件上,然后使用Linux将其从任何进一步的输出文件中剥离出来
编辑现在我们有一些代码。。。 首先,与Python相反,在VHDL中这样做没有什么错;会有更多的打字(在两种意义上的打字),但无论你使用哪种语言,你都必须理解你在写什么。 您必须完成代码(其中一些代码缺失),并修复一些小错误(您有一个类型和一个同名的信号……在任何语言中都是草率的做法)和其他小语法错误。 因此,下一步是完成它,编译它,并修复这些错误。如果您在根据VHDL教科书仔细检查错误行后,不理解错误,请发布错误消息,并询问它的含义以及如何处理-至少,这是一个实际问题。 您还可以使用VHDL-1987文件声明并声明文本类型的文件;您必须升级到VHDL-1993文件处理。用通常的方法找到“VHDL-1993二进制文件I/O”的例子应该不难——试试吧。 |
|
|
elmakhloufi assaad · 用vhdl读取二进制文件 8 年前 |
|
|
Joanna14071 · Verilog中快、慢时钟脉冲的产生 8 年前 |
|
|
Ali khan · Labview FPGA pid控制器 8 年前 |
|
|
v4ttel · VHDL:除法和十进制表示法 8 年前 |
|
|
Mrchacha · 设计编译期间未满足时间要求 8 年前 |
|
|
Krustenkaese · DMA分配内存的屏蔽物理地址有效吗? 8 年前 |