www.mikrocontroller.net

Forum: FPGA, VHDL & Co. VHDL -- REJECT funzt nicht


Autor: Stephan Reitz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen

schreib grad Diplomarbeit über VHDL, wollte das träge / nichtträge
Modell erläutern, schön und gut .... aber folgender Code bringt mir
Fehler

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE WORK.ALL;
ENTITY traege_nichttraege IS

PORT (
zustand : IN std_logic;
aus_1,aus_2 ,aus_3 ,aus_4 ,aus_5 : OUT std_logic );

END traege_nichttraege;

ARCHITECTURE verhalten OF traege_nichttraege IS
SIGNAL a1,a2,a3,a4,a5 : std_ulogic;
BEGIN
a1 <= NOT zustand;
a2 <= NOT zustand AFTER 10 ns;
-- aus_3 <= NOT zustand AFTER 10 ns;
a3 <= reject 10ns INERTIAL NOT zustand AFTER 10 ns;
a4 <= TRANSPORT NOT zustand AFTER 10 ns;
-- aus_5 <= NOT zustand AFTER 10 ns;
a5 <= REJECT 10ns INERTIAL NOT zustand AFTER 10 ns;


END ARCHITECTURE ;



Fehlermeldung :

Compiling entity traege_nichttraege
Compiling architecture verhalten of entity traege_nichttraege
C:\MultiHDL_VHDL\Examples\Module\TRAEGE.VHD(18): Error C0049 :
Syntax error
Not expecting [reject] skipping input up to [INTEGER NUMBER].
C:\MultiHDL_VHDL\Examples\Module\TRAEGE.VHD(18): Error C0050 : Type
mismatch
Not expecting [;] skipping input up to [NAME].
C:\MultiHDL_VHDL\Examples\Module\TRAEGE.VHD(21): Error C0049 :
Syntax error
Not expecting [reject] skipping input up to [INTEGER NUMBER].
C:\MultiHDL_VHDL\Examples\Module\TRAEGE.VHD(21): Error C0050 : Type
mismatch
Not expecting [;] skipping input up to [end].

4 error(s)
There were errors during compilation.


Kann mir jemand sagen warum ? Muss ich noch was einbinden ??? Ist doch
VHDL'93 .... das Ganze läuft unter dem VHDL Tool von Multisim 7 ...

Danke, schnelle Antwort wäre super !

Stephan

Autor: F01Qx (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

process Deklaration fehlte (SensitivityList muss viellicht noch ergänzt
werden)


LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE WORK.ALL;
ENTITY traege_nichttraege IS

PORT (
zustand : IN std_logic;
aus_1,aus_2 ,aus_3 ,aus_4 ,aus_5 : OUT std_logic );

ARCHITECTURE verhalten OF traege_nichttraege IS
SIGNAL a1,a2,a3,a4,a5 : std_ulogic;
BEGIN

process()
begin

a1 <= NOT zustand;
a2 <= NOT zustand AFTER 10 ns;
-- aus_3 <= NOT zustand AFTER 10 ns;
a3 <= reject 10ns INERTIAL NOT zustand AFTER 10 ns;
a4 <= TRANSPORT NOT zustand AFTER 10 ns;
-- aus_5 <= NOT zustand AFTER 10 ns;
a5 <= REJECT 10ns INERTIAL NOT zustand AFTER 10 ns;

end process;

END ARCHITECTURE ;

end beitrag ;-)

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zurück,

mal gespannt obs klappt .... gleich die nächste Frage ...

wie issen der Code für ein JK-Flipflop, bzw. wie mach ich das mit dem
Toggle ( T=J=K = '1 ' ) ?

Wenn ich das simulier, rennt der mir trotz Initialisierung teilweise
mit 'U' los, dann klappt das mit dem Toggle natürlich nicht ... wie
merk ich mir das Signal ?

Danke aber schonmal für Lösung#1

Stephan

Autor: Cpt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ohnen deinen Code zu kennen, kann ich dir da höchstens den Tip geben,
daß da vielleicht etwas nicht so implementiert wird wie du dir das
vorstellst. Ein beispiel zum toggeln:

architecture ...
variable current_state: std_logic;
begin
toggle_proc: process()
begin
if j ='1' and k='1' then
current_state /= current_state;
end if;
end process;
out <= current_state;
end architecture;
---------------------------------------
Das sollte ein Speicherelement erzeugen (D-Latch z.B.)
Vielleicht hilft dir das weiter. Ansonsten poste mal deinen Code.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.