Why is VHDL giving me an 12004 Error even though i have declared everything correctly?Port Mapping memory components not workingTop level using port maps with records in VHDLUsing array of std_logic_vector as a port type, with both ranges using a genericVHDL Component Port Mapping IssuesComponent declaration error in VHDLQ: VHDL Implementation of 2 simple funcitonsHow to implement a 4 bit ALU in VHDL using an opcodeHow to create port map that maps a single signal to 1 bit of a std_logic_vector?Connecting components in VHDL structuralWhat is the usefulness of a component declaration?
Why is music is taught by reading sheet music?
Could Boris Johnson face criminal charges for illegally proroguing Parliament?
Why does `FindFit` fail so badly in this simple case?
"Tenersi pronto" = to get ready or to be ready
What's the correct way to determine turn order in this situation?
How to identify whether a publisher is genuine or not?
What does "execute a hard copy" mean?
Is "weekend warrior" derogatory?
Parent asking for money after I moved out
Should I be an author on another PhD student's paper if I went to their meetings and gave advice?
Is the "spacetime" the same thing as the mathematical 4th dimension?
How to level a picture frame hung on a single nail?
Disable all sound permanently
Is there a way to make an animal companion able to read a language?
Could the Queen overturn the UK Supreme Court ruling regarding prorogation of Parliament?
When Vesuvan Shapeshifter copies turn face up replacement effects, why do they work?
What is the difference between increasing volume and increasing gain?
What action is recommended if your accommodation refuses to let you leave without paying additional fees?
Is there anything on the ISS that would be destroyed if that object were returned to Earth?
Does Bank Manager's discretion still exist in Mortgage Lending
PhD Length: are shorter PhD degrees (from different countries) valued differently in other counter countries where PhD Is a longer process?
Are there types of animals that can't make the trip to space? (physiologically)
How to "Start as close to the end as possible", and why to do so?
How can I find places to store/land a private airplane?
Why is VHDL giving me an 12004 Error even though i have declared everything correctly?
Port Mapping memory components not workingTop level using port maps with records in VHDLUsing array of std_logic_vector as a port type, with both ranges using a genericVHDL Component Port Mapping IssuesComponent declaration error in VHDLQ: VHDL Implementation of 2 simple funcitonsHow to implement a 4 bit ALU in VHDL using an opcodeHow to create port map that maps a single signal to 1 bit of a std_logic_vector?Connecting components in VHDL structuralWhat is the usefulness of a component declaration?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty
margin-bottom:0;
So i am supposed to implement a simple minimum cost function F with the usage of components. I have written what i believe to be the correct way according to my teacher's notes, but i get the error Error (12004): Port "out1" does not exist in primitive "AND2" of instance "U3", which i believe has something to do with the declaration of my components, but i cant find what's wrong. I just began VHDL two days ago so i am newbie to say the least ;p Any help would be very appreciated since i couldn"t find anything else on the internet. The reason i have more variables than i use is that i am going to add more code after i solve this error. :)
library ieee, my_func;
USE ieee.std_logic_1164.all, my_func.basic_func.all;
ENTITY Ergasia IS
PORT (X1,X2,X3,X4,X5:IN std_logic;
F,G:out std_logic);
END Ergasia;
architecture structural of Ergasia is
component AND2
port(in1, in2: in std_logic;
out1: out std_logic);
end component;
component AND3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic;
out1: out std_logic);
end component;
signal X1_NOT, X2_NOT, X3_NOT, X4_NOT, X5_NOT, B1, B2, B3:std_logic;
begin
U0: NOT1 port map (X1,X1_NOT);
U1: NOT1 port map (X2,X2_NOT);
U2: NOT1 port map (X3,X3_NOT);
U3: AND2 port map (X1_NOT,X2_NOT,B1);
U4: AND2 port map (X2, X3_NOT, B2);
U5: AND3 port map (X1, X2, X5, B3);
U6: OR3 port map (B1, B2, B3,G);
end structural;
Also my basic_func is this:
library ieee;
use ieee.std_logic_1164.all;
package basic_func is
component AND2
port(in1,in2:in std_logic; out1:out std_logic);
end component;
component OR3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
component AND3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
end package basic_func;
library ieee;
use ieee.std_logic_1164.all;
entity AND2 is
port(in1,in2:in std_logic; out1:out std_logic);
end AND2;
architecture model_and2 of AND2 is
begin
out1 <= in1 and in2;
end model_and2;
library ieee;
use ieee.std_logic_1164.all;
entity AND3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end AND3;
architecture model_and3 of AND3 is
begin
out1 <= (in1 and in2) and in3;
end model_and3;
library ieee;
use ieee.std_logic_1164.all;
entity OR3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end OR3;
architecture model_or3 of OR3 is
begin
out1 <= (in1 and in2) and in3;
end model_or3;
vhdl quartus
add a comment
|
So i am supposed to implement a simple minimum cost function F with the usage of components. I have written what i believe to be the correct way according to my teacher's notes, but i get the error Error (12004): Port "out1" does not exist in primitive "AND2" of instance "U3", which i believe has something to do with the declaration of my components, but i cant find what's wrong. I just began VHDL two days ago so i am newbie to say the least ;p Any help would be very appreciated since i couldn"t find anything else on the internet. The reason i have more variables than i use is that i am going to add more code after i solve this error. :)
library ieee, my_func;
USE ieee.std_logic_1164.all, my_func.basic_func.all;
ENTITY Ergasia IS
PORT (X1,X2,X3,X4,X5:IN std_logic;
F,G:out std_logic);
END Ergasia;
architecture structural of Ergasia is
component AND2
port(in1, in2: in std_logic;
out1: out std_logic);
end component;
component AND3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic;
out1: out std_logic);
end component;
signal X1_NOT, X2_NOT, X3_NOT, X4_NOT, X5_NOT, B1, B2, B3:std_logic;
begin
U0: NOT1 port map (X1,X1_NOT);
U1: NOT1 port map (X2,X2_NOT);
U2: NOT1 port map (X3,X3_NOT);
U3: AND2 port map (X1_NOT,X2_NOT,B1);
U4: AND2 port map (X2, X3_NOT, B2);
U5: AND3 port map (X1, X2, X5, B3);
U6: OR3 port map (B1, B2, B3,G);
end structural;
Also my basic_func is this:
library ieee;
use ieee.std_logic_1164.all;
package basic_func is
component AND2
port(in1,in2:in std_logic; out1:out std_logic);
end component;
component OR3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
component AND3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
end package basic_func;
library ieee;
use ieee.std_logic_1164.all;
entity AND2 is
port(in1,in2:in std_logic; out1:out std_logic);
end AND2;
architecture model_and2 of AND2 is
begin
out1 <= in1 and in2;
end model_and2;
library ieee;
use ieee.std_logic_1164.all;
entity AND3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end AND3;
architecture model_and3 of AND3 is
begin
out1 <= (in1 and in2) and in3;
end model_and3;
library ieee;
use ieee.std_logic_1164.all;
entity OR3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end OR3;
architecture model_or3 of OR3 is
begin
out1 <= (in1 and in2) and in3;
end model_or3;
vhdl quartus
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
1
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27
add a comment
|
So i am supposed to implement a simple minimum cost function F with the usage of components. I have written what i believe to be the correct way according to my teacher's notes, but i get the error Error (12004): Port "out1" does not exist in primitive "AND2" of instance "U3", which i believe has something to do with the declaration of my components, but i cant find what's wrong. I just began VHDL two days ago so i am newbie to say the least ;p Any help would be very appreciated since i couldn"t find anything else on the internet. The reason i have more variables than i use is that i am going to add more code after i solve this error. :)
library ieee, my_func;
USE ieee.std_logic_1164.all, my_func.basic_func.all;
ENTITY Ergasia IS
PORT (X1,X2,X3,X4,X5:IN std_logic;
F,G:out std_logic);
END Ergasia;
architecture structural of Ergasia is
component AND2
port(in1, in2: in std_logic;
out1: out std_logic);
end component;
component AND3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic;
out1: out std_logic);
end component;
signal X1_NOT, X2_NOT, X3_NOT, X4_NOT, X5_NOT, B1, B2, B3:std_logic;
begin
U0: NOT1 port map (X1,X1_NOT);
U1: NOT1 port map (X2,X2_NOT);
U2: NOT1 port map (X3,X3_NOT);
U3: AND2 port map (X1_NOT,X2_NOT,B1);
U4: AND2 port map (X2, X3_NOT, B2);
U5: AND3 port map (X1, X2, X5, B3);
U6: OR3 port map (B1, B2, B3,G);
end structural;
Also my basic_func is this:
library ieee;
use ieee.std_logic_1164.all;
package basic_func is
component AND2
port(in1,in2:in std_logic; out1:out std_logic);
end component;
component OR3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
component AND3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
end package basic_func;
library ieee;
use ieee.std_logic_1164.all;
entity AND2 is
port(in1,in2:in std_logic; out1:out std_logic);
end AND2;
architecture model_and2 of AND2 is
begin
out1 <= in1 and in2;
end model_and2;
library ieee;
use ieee.std_logic_1164.all;
entity AND3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end AND3;
architecture model_and3 of AND3 is
begin
out1 <= (in1 and in2) and in3;
end model_and3;
library ieee;
use ieee.std_logic_1164.all;
entity OR3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end OR3;
architecture model_or3 of OR3 is
begin
out1 <= (in1 and in2) and in3;
end model_or3;
vhdl quartus
So i am supposed to implement a simple minimum cost function F with the usage of components. I have written what i believe to be the correct way according to my teacher's notes, but i get the error Error (12004): Port "out1" does not exist in primitive "AND2" of instance "U3", which i believe has something to do with the declaration of my components, but i cant find what's wrong. I just began VHDL two days ago so i am newbie to say the least ;p Any help would be very appreciated since i couldn"t find anything else on the internet. The reason i have more variables than i use is that i am going to add more code after i solve this error. :)
library ieee, my_func;
USE ieee.std_logic_1164.all, my_func.basic_func.all;
ENTITY Ergasia IS
PORT (X1,X2,X3,X4,X5:IN std_logic;
F,G:out std_logic);
END Ergasia;
architecture structural of Ergasia is
component AND2
port(in1, in2: in std_logic;
out1: out std_logic);
end component;
component AND3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component OR3
port(in1, in2, in3: in std_logic;
out1: out std_logic);
end component;
component NOT1
port(in1: in std_logic;
out1: out std_logic);
end component;
signal X1_NOT, X2_NOT, X3_NOT, X4_NOT, X5_NOT, B1, B2, B3:std_logic;
begin
U0: NOT1 port map (X1,X1_NOT);
U1: NOT1 port map (X2,X2_NOT);
U2: NOT1 port map (X3,X3_NOT);
U3: AND2 port map (X1_NOT,X2_NOT,B1);
U4: AND2 port map (X2, X3_NOT, B2);
U5: AND3 port map (X1, X2, X5, B3);
U6: OR3 port map (B1, B2, B3,G);
end structural;
Also my basic_func is this:
library ieee;
use ieee.std_logic_1164.all;
package basic_func is
component AND2
port(in1,in2:in std_logic; out1:out std_logic);
end component;
component OR3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
component AND3
port(in1,in2,in3:in std_logic; out1:out std_logic);
end component;
end package basic_func;
library ieee;
use ieee.std_logic_1164.all;
entity AND2 is
port(in1,in2:in std_logic; out1:out std_logic);
end AND2;
architecture model_and2 of AND2 is
begin
out1 <= in1 and in2;
end model_and2;
library ieee;
use ieee.std_logic_1164.all;
entity AND3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end AND3;
architecture model_and3 of AND3 is
begin
out1 <= (in1 and in2) and in3;
end model_and3;
library ieee;
use ieee.std_logic_1164.all;
entity OR3 is
port(in1,in2,in3:in std_logic;out1:out std_logic);
end OR3;
architecture model_or3 of OR3 is
begin
out1 <= (in1 and in2) and in3;
end model_or3;
vhdl quartus
vhdl quartus
asked Mar 28 at 21:02
Marios MoustakidisMarios Moustakidis
1
1
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
1
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27
add a comment
|
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
1
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
1
1
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27
add a comment
|
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55406801%2fwhy-is-vhdl-giving-me-an-12004-error-even-though-i-have-declared-everything-corr%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55406801%2fwhy-is-vhdl-giving-me-an-12004-error-even-though-i-have-declared-everything-corr%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
You're missing the entity/architecture pair for NOT. See Quartus: Error (12004): Port z does not exist in primitive x of instance y. This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.) or using the Altera predefined primitives library instead of your own. (And as the reply on the Intel site implies instantiating primitives isn't real useful.)
– user1155120
Mar 28 at 22:43
i am just doing what my assigment is asking me to do, the way my professor says he wants it to be done and based on his examples. I added the entity for NOT but the problem seems to continue.
– Marios Moustakidis
Mar 28 at 23:05
1
This appears to be a tool limitation. Consider changing names (e.g. AND3 becomes AND_3, etc.). You'd find that using a simulator instead of the particular synthesis tool wouldn't exhibit the problem, see the Intel link. After adding the missing entity/architecture for NOT1 and your design analyzes, elaborates and simulates. You also don't use any declarations from package basic_func, the use clause and library declaration for my_func could also be removed.
– user1155120
Mar 28 at 23:24
If the particular synthesis tool support configuration specifications (as architecture's block declarative items). You should be able to specify which entities to use when instantiating components. This would avoid the necessity for changing primitive names.
– user1155120
Mar 28 at 23:27