07-20-2017 03:57 PM
Hi,
I use the PS FCLK_CLK0 to clock the PL peripherals.
Is it possible to program the PS FCLK_CLK clock through software while system on the fly?
Best wishes,
Lei
07-20-2017 08:02 PM
I dont think so. At least I have never done it. But what do I know?
Some options though:
1. You can connect FCLK_CLKN to Clocking Wizard, which exposes an AXI LITE interface that you can use to dynamically reconfigure the clock output
See page 38 here
https://www.xilinx.com/support/documentation/ip_documentation/clk_wiz/v5_1/pg065-clk-wiz.pdf
2. Some boards (zc702, zc706) have a programmable clock (eg SI570) that you can program using the i2c protocol.
3. In verilog, here is something for you (look but dont do ok?):
https://forums.xilinx.com/t5/Welcome-Join/MUX-for-clock-selection-in-Spartan-6/td-p/327539
4. I also found this 3rd party solution:
https://www.xilinx.com/products/intellectual-property/1-4zb9tn.html
Hope this helps
07-20-2017 08:02 PM
I dont think so. At least I have never done it. But what do I know?
Some options though:
1. You can connect FCLK_CLKN to Clocking Wizard, which exposes an AXI LITE interface that you can use to dynamically reconfigure the clock output
See page 38 here
https://www.xilinx.com/support/documentation/ip_documentation/clk_wiz/v5_1/pg065-clk-wiz.pdf
2. Some boards (zc702, zc706) have a programmable clock (eg SI570) that you can program using the i2c protocol.
3. In verilog, here is something for you (look but dont do ok?):
https://forums.xilinx.com/t5/Welcome-Join/MUX-for-clock-selection-in-Spartan-6/td-p/327539
4. I also found this 3rd party solution:
https://www.xilinx.com/products/intellectual-property/1-4zb9tn.html
Hope this helps
08-07-2017 05:55 PM
Yes, it is definitely possible to change the FCLK from the PS side.
The Linux kernel even provides a driver for this, so you can simply do something like this:
echo fclk0 >/sys/devices/soc0/amba/f8007000.devcfg/fclk_export echo 100000000 >/sys/class/fclk/fclk0/set_rate
Hope this helps,
Herbert