Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How to find pins suitable for differential clock (Spartan7 FPGA)

FlyingDutch

Full Member level 6
Joined
Dec 16, 2017
Messages
323
Helped
40
Reputation
80
Reaction score
39
Trophy points
28
Location
Bydgoszcz - Poland
Activity points
3,312
Hello,

in my last design in FPGA I encountered difficulties with differential clock pins. My FPGA board is:

https://pl.aliexpress.com/item/32959887279.html?spm=a2g17.12010612.8148356.4.1a4954bdnHb81i

with Spartan7 IC - exactly XC7S15-FTGB196

In Vivado project I made block design of Microblaze MCU. This block has input of differential clock (100MHz) as it's input port. On My FPGA board I have single clock of frequency 50 MHz..
In order to provide such clock to MCU desing I used clok wizard IP where i generated 100 Mhz single clock. Then I input this clock to OBUFDS primitive and from it's outputs go out two pins of differential clock (n and p).

My question is how to find for this Spartan7 chip and map in constraint file suitable pins for such clock.

I am showing a part of VHDL code with clock wizard and OBUFDS buffer:
Code:
PLL: clk_wiz_0 port map (clk50MHz,reset_rtl_0, clk100MHz);

 --Output buffer for diff clock (out)
 OBUFDS_buffer : OBUFDS
    generic map(
       IOSTANDARD=>"DEFAULT",   --SpecifytheoutputI/Ostandard
       SLEW=>"SLOW")            --Specifytheoutputslewrate
    port map(
      O => Odiff_clock_rtl_0_clk_p,      --Diff_poutput(connectdirectlytotop-levelport)
      OB => Odiff_clock_rtl_0_clk_n,     --Diff_noutput(connectdirectlytotop-levelport)
      I => clk100MHz                     --Bufferinput
    );

i am also not sure if IOSTANDARD=>"DEFAULT" is OK, or should I explicite give one of differential standars (for example DIFF_HSTL_II_18).

Could I ask for help with this question?

Best Regards
 

KlausST

Super Moderator
Staff member
Joined
Apr 17, 2014
Messages
19,717
Helped
4,343
Reputation
8,695
Reaction score
4,304
Trophy points
1,393
Activity points
130,522
Hi,

I´m no expert here...

differential clock...
* inputs make sense since the clock is spread over the whole chip
* but for output you may use any "differential output" (no need for dedicated "clock")

you should read
--> UG475 for general pinout informations
--> DS189 for voltage and timing specifications
--> UG471 forthe SelectIO resources
--> https://www.xilinx.com/support/packagefiles/s7packages/xc7s15ftgb196pkg.txt for detailed pin names
I guess especially the "IO_LxxP.." and "IO_LxxN..." pins.

Klaus
 

FvM

Super Moderator
Staff member
Joined
Jan 22, 2008
Messages
48,396
Helped
14,251
Reputation
28,763
Reaction score
12,937
Trophy points
1,393
Location
Bochum, Germany
Activity points
280,075
In Vivado project I made block design of Microblaze MCU. This block has input of differential clock (100MHz) as it's input port.
Why? What if you assign a single ended clock input instead?
 

ads-ee

Super Moderator
Staff member
Joined
Sep 10, 2013
Messages
7,820
Helped
1,811
Reputation
3,632
Reaction score
1,772
Trophy points
1,393
Location
USA
Activity points
59,027
You should have the option to build your BD with a single ended clock for the Microblaze. I've been able to do this in the past as almost all the embedded processor focused development boards only have a single ended clock source e.g. 100 MHz oscilator on the board.
 

FlyingDutch

Full Member level 6
Joined
Dec 16, 2017
Messages
323
Helped
40
Reputation
80
Reaction score
39
Trophy points
28
Location
Bydgoszcz - Poland
Activity points
3,312
Hello,

Vivado itself added differential clock in clocking wizard for uBlaze. See screenshot from uBlaze block design:

MCU_ClockingWizard.png


Ok I changedthis port into single clock input on BD. Thanks all for hint :)

Best Regards
 

LaTeX Commands Quick-Menu:

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top