我是使用 System Verilog 进行硬件设计的新手,所以我正在尝试编译一个非常非常简单的文件:D Flip Flop。 它由以下代码组成(取自 https://www.chipverify.com/verilog/verilog-modules):
//examples of module declaration
//here i will make a very simple d flip flop
//declaring a new component that will contain some logic
module dff(input d, input clk, input rstn, output reg q);
always @ (posedge clk)
begin
if(!rstn)
q <= 0;
else
q <= d;
end
endmodule
每当我去编译时,我都会收到错误
Error (12007): Top-level design entity "basics_of_verilog" is undefined
这是有道理的。由于我的模块“DFF”的命名与我在项目创建时声明的顶级实体完全不同。
但是,我无法将 DFF 设置为新的顶级实体。因为实际执行此操作的按钮是灰色的。 ()
我以前从未见过这个,有人可以告诉我到底发生了什么吗?我已经为此摸不着头脑了几分钟。
我已经尝试过谷歌搜索该错误,但似乎我是有记录的人类历史上第一个遇到此错误的人(我应该因此获得诺贝尔奖)。
我找到了解决方案。
因为英特尔的工程师在设计 quartus 时吸食了可卡因,所以他们通过选择将当前设计文件设置为顶层层次结构的选项 项目>“设置为顶级实体” 有时无法使用。
我通过执行以下操作解决了这个问题: 进入项目导航器窗口,然后选择“层次结构”下拉框。 https://snipboard.io/2CyP4r.jpg 然后,右键单击要设置为顶级层次结构的文件,然后选择“设置为顶级实体” https://snipboard.io/4kLheM.jpg
这解决了它。 感谢 Tushar 提供了这个解决方案!