Quartus II altpll input pin bestimmen

Gast #3769680
Hallo

ich möchte mit dem Megawizard unter Quartus das Plug-In "altpll" in mein 
VHDL Projekt einbinden. An welcher Stelle kann ich der PLL einen Pin für 
den Eingangstakt zuweisen? in der erzeugten .ppf Datei, in meiner 
Top-Level .vhd Datei oder in der _altpll.v Datei der PLL? Ich benutze 
zur Zeit ein DE0-Nano Board, dort ist an Pin R8 das Quarz angeschlossen. 
Im Pin Planner erscheint der Pin incl0, aber wenn ich mit der PLL 
arbeiten möchte, erscheint die Fehlermeldung " Clock input port inclk[0] 
of PLL.... must be driven by a non-inverted input pin or another PLL. 
Input port INCLK[0] of node ... is not connnected"

Die PLL habe ich mit

component pllfuerschnellentakt
  PORT
  (
    inclk0    : IN STD_LOGIC  := '0';
    c0    : OUT STD_LOGIC
  );
end component;

und

pllfuerschnellentakt_inst: pllfuerschnellentakt Port Map (
  inclk0 => inclk0_sig,
  c0 => c0_sig);

in mein Top-Level eingefügt.

Hardwareseitig stehen mir vier PLLs zur Verfügung, ist dem Plug-In egal, 
welchen Pin (PLL1 bis PLL4) es zugewiesen bekommt?

Schonmal vielen Dank
Wenn du das QSF eines Demoprojektes vom de0nano als Vorlage nimmst - was 
sehr empfehlenswert ist - dann heisst der Eingang CLOCK_50.

Also instanzierst du den PLL wiefolgt:
1
pllfuerschnellentakt_inst: pllfuerschnellentakt Port Map (
2
  inclk0 => CLOCK_50,
3
  c0 => c0_sig);

Quartus nimmt dann automatisch den passenden PLL der zu dem Eingang 
passt.

Cheers, Roger
Gast
Vielen Dank für die Unterstützung.

Es läuft und wenn ich das richtig verstanden habe, funktioniert das mit 
den Plug-ins so:
Ein- und Ausgänge ganz normal definieren, diese auf Signale 
weiterleiten, die Signale in meine Unterprogramme leiten (PLL etc ) und 
mit den von dort kommmenden Signalen dann arbeiten.


entity MeinProgramm is
   Port( CLOCK_50 : in STD_LOGIC); --Eingang definieren
end MeinProgramm;

architecture Behavioral of MeinProgramm is
signal CLOCK_50_Signal   : std_logic;     --Signal für den Eingang 
erzeugen

component pllfuerschnellentakt
  PORT (inclk0    : IN STD_LOGIC  := '0';
        c0    : OUT STD_LOGIC );
end component;  -- hier Ein- und Ausgänge des Plug-Ins definieren

begin
   pllfuerschnellentakt_inst: pllfuerschnellentakt Port Map (
   inclk0 => CLOCK_50_sig,
   c0 => c0_sig);
      -- Ein- und Ausgänge des Plug-Ins, mit den Signalen verbinden

   process ()
   begin
   -- tu irgendwas
   end process;

  CLOCK_50_sig <= CLOCK_50;  --Signal mit Eingang verbinden

end Behavioral;

Ich hoffe damit anderen helfen zu können

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.