入门
基本介绍
欢迎来到 STEPFPGA!
刚开始学习数字逻辑设计可能会让人感到有些不知所措,因为您需要同时学习新的概念、新的硬件描述语言(例如 Verilog)、几种新的软件包,通常还需要有一个 FPGA 板。STEPFPGA 提供了一种通过单击“仿真”来练习设计和调试简单电路的方法。
设计电路需要经历几个步骤:编写 Verilog 代码,编译代码以生成电路,然后仿真电路并修复错误。
编写代码
最简便的编写代码方式是在下方的代码编辑框中操作。对于这个问题,我们已经为你填写了大部分代码。请继续完成这个电路的代码编写。
点击“仿真”以编译并模拟你的设计。
编译(逻辑合成)
你的代码将使用 Altera Quartus 进行编译以生成电路。Quartus 会产生大量的消息。你可以点击“显示 Quartus 消息”来选择显示或隐藏它们。尽量减少警告的数量是一个良好的实践,但有时要完全消除所有警告并不现实。
仿真
您的编译电路用于测试其是否正确运行。STEPFPGA 使用 ModelSim 同时仿真您的电路和参考解决方案,然后比较模块的输出。仿真报告回两件事情:
-
首先,它报告您的电路是否与参考电路完全匹配(零“不匹配”)或者发生了多少“不匹配”。不匹配是您的电路输出与参考输出不匹配的样本数量。
-
其次,它可能生成时序图,显示在运行我们的测试向量时电路的输出。仿真波形分为三个部分:“输入”、“您的”和“参考”。在正确的电路中,“您的”输出将与“参考”输出相同。“不匹配”信号告诉您哪些样本存在不匹配。
顶层模块名称和端口名称不得更改,否则您将遇到仿真错误。
最终状态
如果您的电路正确,您将看到状态:成功!还有其他几种可能性:
- 编译错误 — 电路未能编译。
- 仿真错误 — 电路成功编译,但仿真未完成。
- 不正确 — 电路编译并仿真,但输出与参考不匹配。
- 成功!— 电路正确。
你可以通过“我的统计”页面跟踪或分享你的进度。
问题 描述
我们将从一小段代码开始,以熟悉 STEPFPGA 使用的接口。以下是本次练习中你需要构建的电路的描述:
构建一个没有输入和一个输出的电路。该输出应始终驱动 1(或逻辑高)。
模块声明
module top_module( output one );