Sie sind nicht Zeilennummer Korrespondenz mit Ihrem Design zeigt. Der Fehler scheint der Signaldeklaration für A
zu entsprechen. Es gibt mehr Syntaxfehler.
Anweisungen werden durch ein Semikolon begrenzt. Schnittstellendeklarationen sind durch Semikolons getrennt. Andere Objektdeklarationen sind durch Semikolons begrenzt. Mehrere Elemente (in der Assoziationsliste hier) sind durch Kommata getrennt.
Es gibt vier Signaldeklarationen (A, B, SUM, CARRY) mit externen Leerzeichen zwischen dem ':' und '=' im Compound-Delimiter ": =", die für den Standardwert '0' verwendet werden.
sollte dies sein:
SIGNAL A: STD_LOGIC := '0';
SIGNAL B: STD_LOGIC := '0';
SIGNAL SUM: STD_LOGIC := '0';
SIGNAL CARRY: STD_LOGIC := '0';
:=
ist variable Zuordnung, Werte für Konstanten und Standard Ausdrücke (Werte) für Objekte eines verwendet, um anzuzeigen.
In der Port-Map ',' sollte als Trennzeichen in der Assoziationsliste anstelle von ';' verwendet werden.
Die letzte Verknüpfung erfordert kein nachfolgendes Komma (Trennzeichen als Trennzeichen)
In den Labels clk_gena und clk_genb ist ein Leerzeichen anstelle eines Unterstrichs.
clk_gena: process
begin
wait for 100 ns;
A <= not A;
end process;
clk_genb: process
begin
wait for 50 ns;
B <= not B;
end process;
Ein Label ist ein einziger Identifizierer eines durch eine oder mehr Buchstaben oder Zahlen von null oder einem Unterstrich-Zeichen getrennt, gefolgt Buchstaben besteht. Die Prozesse sind benannt (benannt) clk_gena und clk_genb.
Nach der Festsetzung dieser Ihre Code-Analysen (kompiliert). Ohne das Entity and Architecture-Paar für den Component-Adder kann Ihr Code nicht ausgearbeitet (verlinkt) oder simuliert werden.
Beachten Sie, dass die beiden Prozesse für 50 ns ausgesetzt werden und ein Prozess ohne eine implizite Last wait-Anweisung, die auf Elemente einer Sensitivitätsliste wartet, beginnt fröhlich die erste sequenzielle Anweisung des Prozesses nach Ausführung der letzten auszuführen.
Die Erwartung wäre, dass Sie entweder eine trailing wait-Anweisung oder eine Steuerungssimulation durch eine implementierungsabhängige Methode hinzufügen würden (z. B. für ein Simulationszeitintervall).
Ihre konstante Clock_Periode wird (noch) nicht in Ihrer testbench verwendet.
Sie zeigen keine Zeilennummer Korrespondenz mit Ihrem Design. Es gibt vier Signaldeklarationen (A, B, SUM, CARRY) mit externen Leerzeichen zwischen dem ':' und '=' im Compound-Delimiter ": =", um einen Standardwert von '0' zu erhalten. In der Port-Map sollte ',' als Trennzeichen in der Assoziationsliste anstelle von ';' verwendet werden. Die letzte Verknüpfung erfordert kein nachfolgendes Komma (es wird als Trennzeichen verwendet). In den Labels clk_gena und clk_genb gibt es einen Platz anstelle eines Unterstrichs. Ein Label ist ein einzelner Bezeichner.Nach der Festlegung dieser Code-Analysen. Es besteht keine weitere Garantie. – user1155120
Konstante Taktperiode: Zeit: = 1000 ns; Es ist in dieser Codezeile – Sami