www.mikrocontroller.net

Forum: FPGA, VHDL & Co. ich find einfach den fehler nich (VHDL)


Autor: Nephilim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

ich hab hier mal nen codeausschnitt gepostet, wo mir xilinx ise 10.1 den 
folgenden fehler zu anmerkt:

ERROR:HDLParsers:164 - "C:/Eigene_Datein/Mentor 
Graphics/Testprojekt/2008_06_25_Control0/Catapult/Solution_1/first_test/ 
rtl.vhdl"  Line 776. parse error, unexpected GENERIC, expecting OPENPAR 
or TICK or LSQBRACK

diese Line 776 ist die Zeile mit den GENERIC MAP.

Die Komponente "mgc_in_wire" is in der Datei "mgc_ioport_comps" in der 
Library "mgc_hls". alles auch soweit vorhanden und eingebunden. der code 
enspringt übrigens einer automatischen code generierung und wurde nicht 
per hand erstellt und ich weiss einfach nich warum er da nen fehler 
anmeckert. für mich sieht das gut aus. aber vielleicht fällt euch ja was 
auf.

thx

  SIGNAL 
Control0_step_Control0_step_proc_1_Control0_Y_rsc_mgc_out_stdreg_d : 
STD_LOGIC_VECTOR
      (15 DOWNTO 0);

BEGIN
  -- Default Constant Signal Assignments

  Control0_U_Input_rsc_mgc_in_wire : 
mgc_hls.mgc_ioport_comps.mgc_in_wire
    GENERIC MAP(
      rscid => 7,
      width => 16
      )
    PORT MAP(
      d => Control0_U_Input_rsc_mgc_in_wire_d_1,
      z => Control0_U_Input_rsc_mgc_in_wire_z
    );
  Control0_U_Input_rsc_mgc_in_wire_d <= 
Control0_U_Input_rsc_mgc_in_wire_d_1;
  Control0_U_Input_rsc_mgc_in_wire_z <= Control0_U_Input_rsc_z;

Autor: Hans-Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Unerwartetes Generic ? Vielleicht fehlt die generate-Anweisung ?
Hier als Beispiel:
generate_rotor_ram : if true
  generate
    generate_ram:
      ram generic map (address_width_ram   => address_width_rotor,
                  data_width_ram      => data_width_rotor)
         port map (
                clock_ram         => clock_rotor_internal,
                data_in_ram       => data_in_rotor_internal,
                data_out_ram      => data_out_rotor_internal,
                write_enable_ram    => write_enable_rotor_internal,
                write_address_ram   => write_address_rotor_internal,  
                read_enable_ram      => read_enable_rotor_internal,
                read_address_ram    => read_address_rotor_internal
               );
  end generate generate_rotor_ram;

Autor: 42 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
fehlt da nicht ein "entity"

...
  Control0_U_Input_rsc_mgc_in_wire : entity 
mgc_hls.mgc_ioport_comps.mgc_in_wire
    GENERIC MAP( ...

Gruß 42

Autor: Nephilim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja ,die entity is natürlich da, nur viel weiter oben, wie gesagt der 
ausschnitt ist bei zeile 776. ich wollt jetzt nich über 1000 codezeilen 
hier posten. das ist nur ein ausschnitt. und ein generate muss da 
nirgens hin, generate hat ja nix mit generic zu tun. das is einfach nur 
eine komponentenintantiierung. und der part wo der fehler zu angezeigt 
wird, ist halt das mapping der Komponente, aber ich seh einfach den 
fehler nich.

Autor: Matthias F. (flint)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nephilim wrote:

> eine komponentenintantiierung. und der part wo der fehler zu angezeigt
> wird, ist halt das mapping der Komponente, aber ich seh einfach den

Der Fehler kann schon viel weiter oben passiert sein, bzw ist es 
ziemlich sicher auch. Kommentiere mal den Teil mit der Instanziierung 
aus, schau, ob es funktioniert, wenn nicht, weißt du, dass der Fehler 
woanders liegt und kannst mit der Strategie weiter eingrenzen.

Autor: Glaskugel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
-Instanziierung bei vorherigen COMPONENT dekleratioN:
 label: componentname

-Instanziierung direkt aus Bibliothek:
 label: entity libary.componentname
 z.B.
   iADC_frd         : entity regdefs.reg3b
   generic map


-Vielleicht liegts auch am Zeilenumbrauch nach dem Label

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.