www.mikrocontroller.net

Forum: FPGA, VHDL & Co. ISE: Map schneidet benötigte Signale ab.


Autor: Mario M. (muraer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallihallo zusammen,

ich tüftel gerade ein bisschen an VHDL rum. (AVR-Softcore in einen 
Spartan-3E).
Dazu verwende ich ISE 12.3.

Mein Top-Modul hat momentan zwei Inputs: die 50MHz Clock und einen 
Reset-Taster.
Die Clock geht dann direkt zu einem DCM, der 20MHz produziert, was dann 
weiter zu den einzelnen Komponenten geht.

Soweit so übersichtlich.

Hier mal die wichtigen VHDL-Schnipsel:
Top-Level:
entity AVR_SoC_Top is
  port(
    CLK_50 : in std_logic;
    Btn_North : in std_logic
  );
end AVR_SoC_Top;

Der DCM:
--Digital Clock Manager:
  Inst_Clock_Gen : Clock_Gen port map(
    CLKIN_IN => CLK_50, --50MHz input from the board
    RST_IN => '0', --don't reset the DCM
    CLKFX_OUT => CLK_20xC, --20MHz Output
    CLKFX180_OUT => CLK_20_180xC, --20MHz, 180deg phase Shifted Output
    CLKIN_IBUFG_OUT => open , 
    CLK0_OUT => open, --no use for the 50MHz clock 
    LOCKED_OUT => DCM_lockedxS --use for Reset
  );

Und die Reset-Verwurstung:
--Assign Reset from Button to signal:
  Assert_Reset: process(DCM_lockedxS, Btn_North) is
  begin
    if DCM_lockedxS = '0' or Btn_North = '1' then
      ResetxS <= '1';
      AVR_ResetxS <= '0';
    else
      ResetxS <= '0';
      AVR_ResetxS <= '1';
    end if;
    
  end process Assert_Reset;

Und zuletzt noch das UCF:

NET "CLK_50" LOC = "C9" |IOSTANDARD = LVTTL;
NET "CLK_50" PERIOD = 20 ns HIGH 50%;
# Press buttons 
#   Must have pull DOWN resistors to provide Low when not pressed.
#
NET "Btn_North" LOC = "V4"  |IOSTANDARD = LVTTL |PULLDOWN;



Nun das Problem:
Die Synthese funktioniert Tiptop, ich kann das Ganze auch ohne Probleme 
im Isim simulieren und es tut, was es soll.

Aber: Sobald ich Implentieren möchte, macht der mapper das:

WARNING:MapLib:701 - Signal CLK_50 connected to top level port CLK_50 
has been
   removed.
WARNING:MapLib:701 - Signal Btn_North connected to top level port 
Btn_North has
   been removed.
WARNING:MapLib:39 - The timing specification "PERIOD=20000 pS HIGH 50%" 
on net
   "CLK_50" has been discarded, because the net was optimized out of the 
design.


Und als Konsequenz:



ERROR:Pack:198 - NCD was not produced.  All logic was removed from the 
design.
   This is usually due to having no input or output PAD connections in 
the
   design and no nets or symbols marked as 'SAVE'.  You can either add 
PADs or
   'SAVE' attributes to the design, or run 'map -u' to disable logic 
trimming in
   the mapper.  For more information on trimming issues search the 
Xilinx
   Answers database for "ERROR:Pack:198" and read the Master Answer 
Record for
   MAP Trimming Issues.


Hä, wieso schneidet der mir diese beiden Signale ab?!? Die werden doch 
offensichtlich gebraucht...?(Simulation klappt ja und da funktionieren 
die Signale auch...) Wieso wirft er die raus?

Stehe etwas auf dem Schlauch... bzw. begreife nicht....

Vielleicht könnt Ihr mir da ja weiterhelfen... ;-)

Herzlichen Gruss und schonmal vielen Dank
Mario

Autor: Jan M. (mueschel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dein Design hat keinen einzigen Ausgang - und da kein eines Signal aus 
dem inneren des FPGA irgendwo außerhalb verwendet wird, ist natürlich 
auch die gesamte Logik im FPGA unnötig und wird wegoptimiert.

Autor: Mario M. (muraer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Omph... :-D

Danke!

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.