これまでの質問をすべて見てきましたが、私のように単純な問題を抱えている人はいません。また、ウェブを検索しましたが、解決策が見つかりません。
私はVHDLを初めて使用し、アルテラが提供する次のような簡単な例をコンパイルしようとしています。
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;
Altera tutorial のプロジェクト作成手順に従いましたが、プロジェクトをコンパイルしようとするとエラーが発生します。
Error (12007): Top-level design entity "alt_ex_1" is undefined
Starting a New Project
の章では、プロジェクトをlight
と呼ぶように求められました。この手順を正しく行わず、プロジェクトにalt_ex_1
という名前を付けたようです。コンパイラがデザインの最上位エンティティが何であるかわからないため、12007エラーが発生するのはそのためです。
その問題を解決するには、次のことができます。
Assignments -> Device -> General
の最上位エンティティ割り当てを変更します。Project Navigator
(Files -> Set as top-level entity
)を使用して、モジュールを最上位エンティティとして設定します。私の問題は、Verilogコードコンパイラに関するものでした。しかし、問題を検索するとき、私はいつもこの質問を見ました。だから私は他の人を導くために私のソリューションも追加することにしました。解決策を見つけるのに時間がかかりました。これが問題を解決するために私がしたことです。次の手順に従ってください(Quartus II 14.0.0); Assignments
-> Settings
-> Top-Level Entity
-> Select your module
プロジェクトナビゲーターパネルでファイル名の上にポインターを置き、右ボタンでクリックして[プッシュ]をクリックします(最上位エンティティとして設定)。できました。