Cyclone I PLL Fehlerhafte Frequenz

Gast #4041784
Lesenswert?

Hallo,

ich habe bei einem Cyclone I die PLL aktiviert und die läuft auch 
soweit. Nur leider mit der falschen Frequenz.

Ich nehme den Wizard und stelle als Taktfrequenz die 50 Mhz ein. (die 
habe ich getestet sind wirklich 50 MHz)
Danach setzte ich die pll auf multi: 1 und div: 1. Der Wizard sagt mir 
ausgangsfrequenz sind 50 Mhz. Nur leider gekomme ich nur die hälfte 
25Mhz.

Hat einer eine Idee was ich falsch mache?

Danke
Gast #4042239
Lesenswert?

Hast du im Wizzard die korrekte Input-Frequenz eingestellt?
Schau mal im ChipPlanner nach der PLL. Dort müsste dann
50MHz als Clk-Input und 50MHz als C0-output stehen.

Ist die Clk-Quelle auch 50MHz?

Wie misst du Clk-Output?
Wird der direkt an einen ClkOut-Pin rausgeführt (CycloneI
hat keine DDR-Output-Pins). Falls du indirekt misst (wie
im letzten Post schon beschrieben), dann erhälst du eben
nur ein 25MHz-Signal.
Gast #4042538
Lesenswert?

Vielen Danke für die Posts.

Meine Messung erfolgt wie folgt. Ich habe zwei Ausgangspins.
Der Code für das Schalten eines Ausgangspins sieht wie folgt aus:
1
LIBRARY ieee;
2
USE ieee.std_logic_1164.ALL;
3
USE ieee.numeric_std.ALL;
4

5

6
ENTITY led_clk is
7
PORT(  clk: IN std_logic;
8
    led: OUT  std_logic
9
    );
10
END ENTITY led_clk;
11

12

13
ARCHITECTURE led_clk_a of led_clk is
14
  CONSTANT  max_count:    natural  :=  100000;
15
  SIGNAL  rst:  std_logic;
16
BEGIN
17
  Rst <= '0';
18
  counter:  PROCESS(clk,rst)
19
    VARIABLE  count:  NATURAL  RANGE  0  to  max_count;
20
  BEGIN  
21
    IF  rst='1'  THEN
22
      count:=0;
23
      led <= '1';
24
    ELSIF  RISING_EDGE(clk)  then
25
      IF  count  <  max_count/2  then
26
        count:=count + 1;
27
        led <= '1';
28
      ELSIF  count < max_count then
29
        count:=count + 1;
30
        led <= '0';
31
      ELSE
32
        led <= '1';
33
        count:=0;
34
      END IF;
35
    END IF;
36
  END PROCESS  counter;
37
END ARCHITECTURE led_clk_a;

Einen Ausgang lasse ich mit dem Clock am CLK0 direkt treiben. Dort kommt 
eine Frequenz von 500Hz raus. Das mach auch sinn da 500*100000=50MHz 
sind.
Den Zweiten Ausgang lasse ich mit mit der PLL laufen. dort kommen aber 
nur 244 Hz raus.


Im Wizard steht als Eingang 50Mhz und der sagt mir als Ausgangsfrequenz 
für c0 50 Mhz. (Siehe Fotos)

Danke
Angehängte Dateien:
Gast #4043132
Lesenswert?

Mach aus den M: 16 mal ein M: 8 :-)

Bei meinem EP1C3-Board war urspruenglich nur der Clk3 an den
50 MHz-Oszillator angeschlossen. Ein zusaetzlicher Faedeldraht
versorgt jetzt auch Clk1.
Ich habe auch die Einstellungen fuer die Eingangslogik von Clk1 mal
systematisch getestet, der PLL-VCO will nicht auf 800 MHz
schwingen.
400 MHz schafft er aber.

Wie sieht Deine Hardware aus?
Gast #4043187
Lesenswert?

Dann koenntest Du nur noch mal schauen ob bei Deiner Hardware
die Abblockkondensatoren fuer VCCA richtig und vorhanden sind.

Einen Grund muss es ja haben das der VCO die 800 MHz nicht erreicht.

Eventuell koennte eine Serienterminierung mit 20 Ohm direkt hinter
dem Quarzoszillator das Signal etwas gefaelliger aussehen lassen.

P.S.: Es war bei mir natuerlich auch Clk0 und nicht Clk1.
Das haette aber wohl keinen Unterschied gemacht.
Gast #4043214
Lesenswert?

Ohne Chipplaner vermutlich nur ueber das Getrickse mit den Frequenzen.
Der Moduloteiler M taucht leider nicht explizit bei den:

-- Retrieval info: PRIVATE:

der generierten Datei PLL.VHD auf. Nur die Eingangs- und
Ausgangsfrequenzen.

Eventuell kannst Du versuchen dort noch etwas zu drehen.
In wie weit sich das im Syntheseergebnis fuer die PLL niederschlaegt
weiss ich schlichtweg nicht.

Das bei dem PLL-VCO in diesem HW-Design oberhalb von 400 MHz
nichts sinnvolles mehr kommt, muss man dann halt beruecksichtigen.
Und wenn ein geplantes Design damit nicht zurechtkommt, dann
muesste man wohl ein anderes Board in Erwaegung ziehen.

Nach dem Datenblatt sollen ja auch 800 MHz gehen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren