Differential clock in UCF, FRAGE

Gast #1504754
Lesenswert?

Hallo,

ich benutze ein SPARTAN SP 601 system, welches éin 200 MHZ sys clock 
besitzt. Ich möchte ein Signal dem 200 MHz zuteilen, aber in der ucf 
komm ich nicht so recht, in der annleitung steht:

NET "SYSCLK_N" LOC = "K16";
NET "SYSCLK_P" LOC = "K15";


Wenn mein Signal MASTERCLK heist, wie sieht die ucf aus? So : ?


NET "MASTERCLK_N" LOC = "K16";
NET "MASTERCLK_P" LOC = "K15";


?


Gruss

DANKE
Gast #1506253
Lesenswert?

Ok, danke für die antwort. ICh hab das so gemacht

1
Library UNISIM;
2
use UNISIM.vcomponents.all;
3

4

5
library IEEE;
6
use IEEE.STD_LOGIC_1164.ALL;
7
use IEEE.STD_LOGIC_ARITH.ALL;
8
use IEEE.STD_LOGIC_UNSIGNED.ALL;
9

10
---- Uncomment the following library declaration if instantiating
11
---- any Xilinx primitives in this code.
12
--library UNISIM;
13
--use UNISIM.VComponents.all;
14

15
entity Test is
16
    Port ( CLKIN : in  STD_LOGIC;
17
           reset : in std_logic;
18
        CLKOUT1: out std_logic;
19
        CLKOUT2 : out  STD_LOGIC);
20
end Test;
21

22

23
architecture Behavioral of Test is
24

25
signal cnt: integer range 0 to 1 :=0;
26

27
begin
28

29

30
  IBUFGDS_inst : IBUFGDS
31
   generic map (
32
      DIFF_TERM => FALSE, -- Differential Termination 
33
      IOSTANDARD => "DEFAULT")
34
   port map (
35
      O => open,  -- Clock buffer output
36
      I => CLKIN,  -- Diff_p clock buffer input (connect directly to top-level port)
37
      IB => CLKIN -- Diff_n clock buffer input (connect directly to top-level port)
38
   );


So ganz klappt das nicht, bin aber auch anfänger. Kann mir jemand sagen 
wo ich den Fehler mache? und wie muss ide ucf. ausschauen?


Gruß

Danke
Moderator (Firma: Titel) Persönliche Seite #1506365
Lesenswert?

Du kannst nicht den selben Takt auf den p und den n eingang geben. Das 
müssen 2 zueinandergehörende, aber unterschiedliche Pins sein. Und ganz 
am anfang schreibst du doch was vom MASTERCLK_N und MASTERCLK_P...
Also eher so:
1
entity Test is
2
    Port ( MASTERCLK_P : in  STD_LOGIC;
3
           MASTERCLK_N : in  STD_LOGIC;
4
           reset : in std_logic;
5
           CLKOUT: out std_logic);
6
end Test;
7

8

9
  IBUFGDS_inst : IBUFGDS
10
   generic map (
11
      DIFF_TERM => FALSE, -- Differential Termination 
12
      IOSTANDARD => "DEFAULT")
13
   port map (
14
      O => CLKOUT,  -- Clock buffer output, das ist jetzt der FPGA-interne Takt
15
      I => MASTERCLK_P,  -- Diff_p clock buffer input (connect directly to top-level port)
16
      IB => MASTERCLK_N -- Diff_n clock buffer input (connect directly to top-level port)
17
   );

Die andere Richtung wäre ein OBUFDS...
Gast #1506411
Lesenswert?

Hi,

danke aber eigentlich will kein _p und _N ich möchte die 200 MHZ auf ein 
Signal geben, diese sind aber nur Differentiel verfügbar, also wie sag 
ich den bescheid das ich dies nur auf Eingang beziehen will?


Danke
Moderator (Firma: Titel) Persönliche Seite #1506482
Lesenswert?

Diferentielle Signale haben nun mal eine p und eine n Strippe (oder auch 
eine + und eine - oder eine h und eine l). Du willst also aus einem 
differentiellen LVDS-Signal ein "normales" Signal machen?
Fall ja:
1
entity Test is
2
    Port ( MASTERCLK_P : in  STD_LOGIC;
3
           MASTERCLK_N : in  STD_LOGIC;
4
           reset : in std_logic;
5
           CLKOUT: out std_logic);
6
end Test;
7

8
  IBUFDS_inst : IBUFDS
9
   generic map (
10
      DIFF_TERM => FALSE, -- Differential Termination 
11
      IOSTANDARD => "DEFAULT")
12
   port map (
13
      O => CLKOUT,  -- Clock buffer output, das ist jetzt der FPGA-interne Takt
14
      I => MASTERCLK_P,  -- Diff_p buffer input (connect directly to top-level port)
15
      IB => MASTERCLK_N -- Diff_n buffer input (connect directly to top-level port)
16
   );
Ja, wo isser denn, der Unterschied?

Falls nein: Zeichne einfach mal ein Bild, damit man sich was drauf 
Abbilden kann.
#1506553
Lesenswert?

Gast schrieb:
> Hi,
>
> danke aber eigentlich will kein _p und _N ich möchte die 200 MHZ auf ein
> Signal geben, diese sind aber nur Differentiel verfügbar, also wie sag
> ich den bescheid das ich dies nur auf Eingang beziehen will?

Das geht nur mit dem IBUFGDS, wie schon gesagt wurde. Die beiden 
differenziellen Pins setzt der in ein normales Clock Signal um. Du 
musst über _p und _n gehen, wenn dein Takt differenziell am Chip 
anliegt.

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