Update clocking page with clocker

Signed-off-by: Egor Savkin <es@m-labs.hk>
This commit is contained in:
Egor Savkin 2023-10-30 10:32:36 +08:00
parent c5d48d2e2f
commit 8b1488c4e1

View File

@ -3,7 +3,8 @@
This page describes ways to set up clocking. Official documentation references: This page describes ways to set up clocking. Official documentation references:
* [Carrier configuration](https://m-labs.hk/artiq/manual/installing.html#miscellaneous-configuration-of-the-core-device) * [Carrier configuration](https://m-labs.hk/artiq/manual/installing.html#miscellaneous-configuration-of-the-core-device)
* Devices' [available options](https://m-labs.hk/artiq/manual/core_drivers_reference.html), [Urukul example](https://m-labs.hk/artiq/manual/core_drivers_reference.html#artiq.coredevice.urukul.CPLD) *
Devices' [available options](https://m-labs.hk/artiq/manual/core_drivers_reference.html), [Urukul example](https://m-labs.hk/artiq/manual/core_drivers_reference.html#artiq.coredevice.urukul.CPLD)
In general, any RF card and Carriers require some clock source. Most of them have both internal clock signal generator In general, any RF card and Carriers require some clock source. Most of them have both internal clock signal generator
and external MMCX and/or SMA connectors to accept the signal. By default the internal clock is used for Carriers, and external MMCX and/or SMA connectors to accept the signal. By default the internal clock is used for Carriers,
@ -51,9 +52,11 @@ default-ish [CONFIG.TXT](../extra/CONFIG.TXT) to the SD card near (same level) `
## RF Devices (Except Clocker) ## RF Devices (Except Clocker)
If you want to set the clock source specifically for RF devices, you will just need to update the JSON file and [regenerate device_db.py file](device_db.md). If you want to set the clock source specifically for RF devices, you will just need to update the JSON file
and [regenerate device_db.py file](device_db.md).
For example for Urukul, you will just need to check the manual for available variants and apply them in the JSON file, so Urukul entry may look like this: For example for Urukul, you will just need to check the manual for available variants and apply them in the JSON file,
so Urukul entry may look like this:
```json ```json
{ {
@ -62,7 +65,17 @@ For example for Urukul, you will just need to check the manual for available var
``` ```
So basically, `clk_sel` and `refclk` fields need to be set: So basically, `clk_sel` and `refclk` fields need to be set:
* `clk_sel` selects the source clock, where 0 - internal 100MHz XO; 1 - front-panel SMA; 2 internal MMCX * `clk_sel` selects the source clock, where 0 - internal 100MHz XO; 1 - front-panel SMA; 2 internal MMCX
* `refclk` - reference clock frequency in Hz * `refclk` - reference clock frequency in Hz
These settings may need to be checked with official manual and may differ from device to device. These settings may need to be checked with official manual and may differ from device to device.
## Clocker card
Main page: [clocker.md](../hw/clocker.md)
Clocker card allows to distribute clock signal up to 1 GHz without additional software setup. Therefore, there is no way
to set it to generate signal, which would be different from input. The only setup allowed is to set to accept signal
from `EXT`/`INT` ports, front-panel SMA or card's MMCX ports respectively, by switching the `CLK SEL` switch on the
card ![](../img/clocker_ref.jpg).