- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 9 von 9

Thema: VHDL - Fehlermeldung ohne Fehler?

  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485

    Frage VHDL - Fehlermeldung ohne Fehler?

    Anzeige

    Praxistest und DIY Projekte
    Hallo Leute,
    Ich hab grad ein ziemlich großes Problem. Wir müssen als Arbeit in der Schule einen Counter IC nachbauen, jetzt haben wir zum Testen, bzw. für Elemente ein JK-FF bauen sollen. Nun, die Programmierung an sich ist kein Problem, aber der Fehler der auftritt:
    Klicke auf die Grafik für eine größere Ansicht

Name:	vhdl_error.jpg
Hits:	26
Größe:	19,9 KB
ID:	24605
    (Line 14 ist die mit dem Aufruf von FALLING_EDGE(clk) )

    Auch der Lehrer meint, dass er keinen Fehler finden kann. Ich hab schon versucht eine neue *.vhd Datei zu erstellen, ein neues Projekt, speichern auf einem anderen Datenträger - trotzdem keine Besserung und immer der gleiche Fehler.

    Das Programm:
    Code:
    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    
    ENTITY jk_ff IS
    	port(	clk, j, k, rst : in bit;
    			q			   : buffer bit);
    END jk_ff;
    
    ARCHITECTURE flipflop OF jk_ff IS
    BEGIN
    	PROCESS(clk,rst)
    	BEGIN
    		IF rst = '0' THEN q <= '0';
    		ELSIF FALLING_EDGE(clk) THEN
    			IF j='1' AND k='0' THEN q <= '1';
    			ELSIF j='0' AND k='1' THEN q <= '0';
    			ELSIF j='1' AND k='1' THEN q <= NOT q;
    			ELSIF j='0' AND k='0' THEN q <= q;
    			END IF;
    		END IF;
    	END PROCESS;
    END flipflop;
    Bei anderen Mitschülern funktioniert die Funktion FALLING_EDGE(xy) bzw. RISING_EDGE(xy) ohne Probleme.

    Ich verwende Altera MAX+plus II in der Version 10.2

    grüße
    thomas
    Geändert von robo_tom_24 (21.02.2013 um 15:59 Uhr) Grund: Line Hinweis

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Bad Bramstedt
    Alter
    45
    Beiträge
    1.369

    Das Programm:
    Code:
    LIBRARY IEEE;
    USE IEEE.STD_LOGIC_1164.ALL;
    
    ENTITY jk_ff IS
        port(    clk, j, k, rst : in bit;
                q               : buffer bit);
    END jk_ff;
    
    ARCHITECTURE flipflop OF jk_ff IS
    BEGIN
        PROCESS(clk,rst)
        BEGIN
            IF rst = '0' THEN q <= '0';
            ELSIF FALLING_EDGE(clk) THEN
                IF j='1' AND k='0' THEN q <= '1';
                ELSIF j='0' AND k='1' THEN q <= '0';
                ELSIF j='1' AND k='1' THEN q <= NOT q;
                ELSIF j='0' AND k='0' THEN q <= q;
                END IF;
            END IF;
        END PROCESS;
    END flipflop;
    Hallo, ich kenn das jetzt nicht wirklich, aber das rote sieht schon mal verdächtig aus, finde ich...

    Mit es funktioniert bei den Anderen meinst Du das dieses Program bei den Anderen läuft?

    Dann kann es sonst an der IEEE Einbindung liegen. Vielleicht holt es sich nicht die Richtige...

    Viele Grüße
    Geändert von HeXPloreR (21.02.2013 um 16:29 Uhr)

  3. #3
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Ich teste das gleich mal in meinem FPGA. Die Meldung ist mir nicht aussagekräftig genug
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Hallo
    Neee, die Initialisierung ist richtig...
    Die Funktion FALLING_EDGE funktioniert, das Programm haben wir nicht getestet

    Danke, das wär echt super

    grüße

  5. #5
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Sodele,

    ich habe den Code mal durch mein WebPack gejagd und bei mir kommen keine Fehler.
    Es kommt nur noch eine Warnung das der Clock nicht sauber gelegt ist (dies wird normalerweise vom Synthesizer gemacht. Du kannst ihn aber auch anweisen die Regeln bzgl. Taktverlegung zu ignorieren. Dann warnt er dich nur noch).
    Synthese, Implementierung und Bitstream sind alle gemacht worden (aber nicht von mir getestet).
    Hab zwei kleine Änderungen vorgenommen.
    Zum einen

    IF RST = '0' THEN
    Q <= '0';

    in

    IF RST = '1' THEN
    Q <= '0';

    und zum anderen die "falling" Edge auf "rising" Edge geändert.
    Warum siehst du hier:

    http://stackoverflow.com/questions/7...e-1018-message

    Im Anhang hast du den ganzen Ordner mit .bin-File etc.
    Viel Spaß damit
    Angehängte Dateien Angehängte Dateien
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  6. #6
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Danke Kampi

    Ich "darf" die Flanken und den pegel nicht ändern, ist so in der Aufgabe vorgegeben

    Zum Fehler: Die Clock Leitung muss vom Typ "STD_LOGIC" sein, und nicht vom Typ "bit"...

    danke nochmal
    grüße

  7. #7
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Ok dann musst du es wieder ändern
    Kannst ja bescheid geben ob die beide Designs funktioniert haben

    Gut "Std_Logic" klingt sinnvoll....dieser Datentyp stellt auch mehr Funktionen für einen Pin bereit.
    Bin selber noch nicht so tief in dem Thema drin, von daher dachte ich "Bit" würde auch gehen. Aber beim genaueren Überlegen kann das nicht sein,da "Bit" im Vergleich zu "Std_Logic" z.B. keine High Impendance, Bereich der Ausgangsspannung, Treiberstärke etc. bereit stellt.
    Wieder was gelernt was nicht im Buch steht
    VHDL ist halt doch eeeeeeeeeetwas komplizierter als eine Programmiersprache wie ich finde
    Geändert von Kampi (22.02.2013 um 07:29 Uhr)
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  8. #8
    Moderator Begeisterter Techniker Avatar von tucow
    Registriert seit
    16.01.2006
    Ort
    Düsseldorf
    Alter
    39
    Beiträge
    269
    Hab's leider erst jetzt gesehen, aber ein kleiner Tipp vom Profi: Immer STD_LOGIC verwenden, erst auf andere Typen wechseln wenn es unbedingt nötig ist. Schließt ne Menge Fehler aus.
    Gruß
    Andreas




    Mein: Humanoide // nanoCopter Projekt
    Das Raspberry Pi als: Wifi Access Point // Wifi Router

  9. #9
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Jo, danke für den Tipp. Das gewöhn ich mir denk ich jetzt an. Aber wenns dir der Lehrer so erzählt...

Ähnliche Themen

  1. VHDl-AMS Fragen
    Von Markus87 im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 1
    Letzter Beitrag: 16.09.2011, 18:43
  2. Antworten: 13
    Letzter Beitrag: 27.01.2009, 13:50
  3. Bascom Fehlermeldung CRC Fehler in Setupdemo
    Von BrumRobot im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 14.10.2008, 17:00
  4. Target-Fehler: Power ohne Supply
    Von OnkelTobi im Forum Konstruktion/CAD/3D-Druck/Sketchup und Platinenlayout Eagle & Fritzing u.a.
    Antworten: 1
    Letzter Beitrag: 15.09.2006, 00:42
  5. komische Fehlermeldung ohne Zeilenangabe
    Von Dane im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 17.12.2005, 18:44

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test