一个简短的回答
Error (12007): Top-level design entity "alt_ex_1" is undefined
错误消息远非微不足道,但它确实以一种迂回的方式告诉了问题所在。您(可能)正在使用alt_ex_1.vhd
您的设计文件的名称。
在 Altera Quartus 中,文件名entity
必须与 VHDL 设计代码中声明的(顶层)名称相同。
您需要做的是将文件名从 更改alt_ex_1.vhd
为
light.vhd
.
为简单起见,创建一个名为light
而不是alt_ex_1
.
详细的答案
重现错误很简单。这就是我所做的。1
启动Quartus Prime Lite Edition后,单击File
>
New Project Wizard...
。
如果您看到简介,请单击Next >
。选择一个工作目录。
作为项目名称输入alt_ex_1
。单击Next >
两次,然后单击Finish
。
创建设计文件:File
> New...
.
下Design Files
,选择VHDL File
,然后OK。
下一步File
> Save As...
。键入或粘贴alt_ex_1.vhd
并单击
Save
。
粘贴代码:
library ieee;
use ieee.std_logic_1164.all;
entity light is
port(x1, x2: in std_logic;
f: out std_logic);
end light;
architecture LogicFunction of light is
begin
f <= (x1 and not x2) or (not x1 and x2);
end LogicFunction;
并再次保存文件。
Processing
使用> Start
> Start Analysis & Synthesis
- 或按
Ctrl+编译K。消息窗口显示错误:
12007 Top-level design entity "alt_ex_1" is undefined
要摆脱烦人的错误,请删除在工作目录中创建的所有文件,然后重新开始。按照上面的说明进行操作,但这次确保将每次出现的地方都替换alt_ex_1
为light
。
在消息窗口中,期望看到如下内容:
Quartus Analysis & Synthesis was successful. 0 errors, 1 warning
作为最后几行之一。
1在 Windows 10 上使用 Altera / Intel Quartus Lite 18.1,但版本可能并不重要。
参考: