cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
329 Views
Registered: ‎10-14-2019

uZedboard PL clock is not working on simple example

Jump to solution

Hi.

I am unable to use the 100 MHz internal oscillator on the Zedboard that is connected to the Y9 package pin. I have a quite simple example of a custom UART receiver that is just outputting the received byte to the LEDs. I have inserted debug probes and the clock is just constant = 0, i.e. no clock square wave. I have spent hours trying different voltage levels and regenerating the bitstream but to no end. An extremely frustrating experience as I have another simple design with appearantly the same I/O settings (a clk signal connected to Y9) which does work. Do anyone have an idea of how to debug this?

Below I will copy my constraints file and post some screenshots from Vivado. Thanks alot for any help

This is my constraints:
"

set_property PACKAGE_PIN U14 [get_ports {leds_0[7]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[7]}]
set_property PACKAGE_PIN U19 [get_ports {leds_0[6]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[6]}]
set_property PACKAGE_PIN W22 [get_ports {leds_0[5]}]
set_property PACKAGE_PIN V22 [get_ports {leds_0[4]}]
set_property PACKAGE_PIN U21 [get_ports {leds_0[3]}]
set_property PACKAGE_PIN U22 [get_ports {leds_0[2]}]
set_property PACKAGE_PIN T21 [get_ports {leds_0[1]}]
set_property PACKAGE_PIN T22 [get_ports {leds_0[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[5]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[4]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[2]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {leds_0[0]}]
set_property PACKAGE_PIN Y9 [get_ports {clk_0}]
set_property PACKAGE_PIN P16 [get_ports {reset_0}]
set_property IOSTANDARD LVCMOS18 [get_ports {clk_0}]
set_property IOSTANDARD LVCMOS18 [get_ports {reset_0}]

 

set_property PACKAGE_PIN Y11 [get_ports {rxd_0}]
set_property IOSTANDARD LVCMOS18 [get_ports {rxd_0}]
"

Screenshot from 2020-10-12 18-37-09.png
Screenshot from 2020-10-12 18-36-44.png
0 Kudos
Reply
1 Solution

Accepted Solutions
Highlighted
321 Views
Registered: ‎06-21-2017

You cannot monitor a clock with an ILA clocked by the same clock.  It will always look like a constant value.  In addition, doing this forces the clock off of dedicated clock routing.  Some suggestions.  Use a MMCM from a Clock Wizard to derive the on-board clock from your input clock.  If you want to monitor the clock out of the clock wizard, divide it in logic and route this divided signal to the ILA.

View solution in original post

2 Replies
Highlighted
322 Views
Registered: ‎06-21-2017

You cannot monitor a clock with an ILA clocked by the same clock.  It will always look like a constant value.  In addition, doing this forces the clock off of dedicated clock routing.  Some suggestions.  Use a MMCM from a Clock Wizard to derive the on-board clock from your input clock.  If you want to monitor the clock out of the clock wizard, divide it in logic and route this divided signal to the ILA.

View solution in original post

Highlighted
Visitor
Visitor
307 Views
Registered: ‎10-14-2019
Thanks Bruce!
That hadn't occured to me. It turns out that the actual problem was that I had specified active low reset, while the pushbutton serving is inverted wrt that