Skip to the content
PCBKitNew board
4 layers90 × 90 mmCLOCK, the printed circuit board in 3D

High-precision frequency meter clock generation module

Size
90 × 90 mm
Copper layers
4
Thickness
1.61 mm
Parts
162
Nets
131
Pads
546
Tracks, vias
0, 0
Routed
Not yet
KiCad
KiCad 10.0 (file 20260206)
Created
10 Aug 2026
Updated
4 Nov 2026

Overview

CLOCK is an open-source printed circuit board by Han-ZenX, from the Han-ZenX/CLOCK repository on GitHub. It is a 4-layer board of 90 × 90 mm with 162 parts on 131 nets.

It is built around the LMK1C1102PW, TPS63020DSJR and TPS78633DCQ, with the LMK5B12204RGZ and X32258MOB4SI among its other parts. Its parts include 72 capacitors, 42 resistors, 16 connectors, 8 ICs and 2 diodes. It belongs with the lEDs and displays boards and the STM32 boards of this library.

Main components

5

README

README.md

CLOCK - 高精度频率计后端标准时钟产生模块

专业级时间基准解决方案 | 超低相位噪声 | 高稳定度输出

License Version [blocked]


📋 项目概述

本模块是高精度频率计的后端标准时钟产生系统,为频率测量提供超稳定的时间基准信号。采用 TI 高端时钟发生器芯片 LMK5B12204 和 LMK1C1102,实现超低相位噪声和高精度的时钟输出,适用于精密测试测量、通信系统、雷达电子战等对时钟质量要求极高的应用场景。

核心特性

  • ✅ 超低相位噪声:专业级时钟性能,满足苛刻的频谱纯度要求
  • ✅ 多路可编程输出:支持 4 路独立可编程差分时钟输出(LVDS/PECL)
  • ✅ 高分辨率频率合成:支持 1Hz-3.3GHz 范围内任意频率设定
  • ✅ 参考源冗余切换:双参考输入 + 自动切换,确保时钟连续性
  • ✅ 低抖动性能:<0.2ps RMS 抖动,提供精准时序基准
  • ✅ EEPROM 存储:配置断电保存,上电自启动
  • ✅ 硬件级稳定性:工业级设计,宽温工作范围

🔧 技术规格

时钟输出性能

参数指标
输出通道数4 路独立可编程
输出类型LVDS / PECL / CML 差分
频率范围1MHz ~ 1.25GHz (每路独立)
相位噪声< -110dBc @ 1kHz (100MHz 输出)
均方根抖动< 0.2ps (12kHz-20MHz 积分)
输出幅度800mVp-p 差分 (典型)
输出阻抗50Ω 匹配

参考输入

参数指标
主参考输入10MHz 正弦/CMOS 可选
备参考输入10MHz 或 1PPS 可选
参考切换自动故障检测与无缝切换
1PPS 对齐支持秒脉冲同步对齐

电源要求

  • 核心电压:3.3V ±5%
  • 功耗:典型 1.2W
  • 电源抑制比:>60dB

🏗️ 系统架构

text
┌─────────────────────────────────────────────────────────────┐
│                    CLOCK 时钟产生模块                        │
├─────────────────────────────────────────────────────────────┤
│                                                               │
│   ┌──────────┐    ┌──────────┐    ┌──────────┐              │
│   │  Ref 1   │    │  Ref 2   │    │  1PPS    │              │
│   │ 10MHz    │    │ 10MHz/   │    │  Pulse   │              │
│   │ 正弦     │    │ PPS      │    │          │              │
│   └────┬─────┘    └────┬─────┘    └────┬─────┘              │
│        │               │                │                   │
│        └───────────────┼────────────────┘                   │
│                        ▼                                    │
│                 ┌───────────────┐                           │
│                 │   LMK5B12204  │  ┌────────────┐          │
│                 │  时钟生成器   │  │            │          │
│                 │  (Main PLL)   │→ │ Out0:100MHz│ LVDS     │
│                 │               │  │            │          │
│                 │               │→ │ Out1:10MHz │ LVDS     │
│                 │               │  │            │          │
│                 │               │→ │ Out2:10MHz │ LVDS     │
│                 │               │  │            │          │
│                 │               │→ │ Out3:1PPS  │ CMOS     │
│                 └───────────────┘  └────────────┘           │
│                        ▲                                      │

关键组件

器件制造商功能描述
LMK5B12204Texas Instruments高性能时钟生成器,内置 4 个超低噪声 PLL
LMK1C1102Texas Instruments低抖动时钟分配器,提供辅助时钟路径
SMA 连接器AmphenolRF 输入输出接口,50Ω 匹配
EEPROMAtmel非易失性配置存储

📁 目录结构

text
CLOCK-master/
├── firmware/              # 嵌入式固件代码
│   ├── src/
│   │   ├── app/           # 应用层:时钟控制逻辑、状态机
│   │   ├── hal/           # 硬件抽象层:GPIO、I²C、定时器
│   │   ├── drivers/       # 驱动层:LMK5B 寄存器配置
│   │   └── services/      # 服务层:I²C 通信、EEPROM 访问
│   ├── boards/            # 板级配置
│   └── CMakeLists.txt     # CMake 构建配置
├── hardware/              # 硬件设计文件
│   ├── schematic/         # KiCad 原理图
│   │   └── v1.0/
│   │       ├── CLOCK.kicad_sch
│   │       ├── CLOCK.kicad_pcb
│   │       └── ...
│   ├── bom/               # BOM 物料清单
│   ├── gerber/            # PCB 生产文件
│   └── pinout/pinout.md   # 引脚分配说明
├── software/              # 配套软件(可选)
│   ├── desktop/           # PC 配置工具
│   └── mobile/            # 移动端 App
├── docs/                  # 项目文档
│   ├── architecture/      # 架构设计文档
│   ├── user-guide/        # 用户使用手册

🛠️ 快速开始

环境要求

  • 编译工具链:ARM GCC Toolchain (arm-none-eabi-gcc)
  • 构建系统:CMake 3.16+
  • 硬件调试器:JLink / STLink
  • 操作系统:Windows 10+ / Linux / macOS

构建固件

bash
# 克隆仓库
git clone https://github.com/your-repo/CLOCK.git
cd CLOCK

# 创建构建目录
mkdir build && cd build

# 配置项目
cmake .. -DBOARD=default

# 编译 Debug 版本
cmake --build .

# 编译 Release 版本(优化)
cmake --build . --config Release

或使用自动化脚本:

bash
python tools/scripts/build.py --board=default          # Debug 构建
python tools/scripts/build.py --board=v2.0 --release   # Release 构建
python tools/scripts/build.py --flash                  # 构建并烧录

烧录固件

bash
# JLink 烧录
JLinkExe -device STM32F4xx -interface swd -speed 4000 -fc 4 -commandER -exitafter1sec firmware/build/app.hex

# 或通过 IDE 烧录

📖 使用说明

1. 硬件连接

  1. 连接外部 10MHz 参考源到 J1 (REF_IN) SMA 接口
  2. 可选:连接备用参考源到 REF_BIST 接口
  3. 连接电源至 VDD_3V3 (3.3V, 最大 500mA)
  4. 观测输出:
    • J2: OUT0 - 100MHz 主时钟
    • J3: OUT1 - 10MHz 分频时钟
    • J4: OUT2 - 可配置频率
    • J5: OUT3 - 1PPS 秒脉冲

2. 默认配置

上电后,模块将加载 EEPROM 中保存的配置:

  • OUT0: 100MHz LVDS 差分输出
  • OUT1: 10MHz LVDS 差分输出
  • OUT2: 10MHz LVDS 差分输出
  • OUT3: 1PPS 正方形波输出(上升沿对齐 UTC 时间)

3. 配置时钟参数

通过串口命令或 I²C 接口修改时钟参数:

bash
# 示例:使用串口终端配置
echo "SET_FREQ OUT0 200MHz" > /dev/ttyUSB0    # 设置 OUT0 为 200MHz
echo "SET_FMT OUT1 LVDS" > /dev/ttyUSB0       # 设置 OUT1 格式为 LVDS
echo "SAVE_CONFIG" > /dev/ttyUSB0             # 保存配置到 EEPROM

详细命令集请参考 API 文档.


🔬 性能验证

相位噪声测试

在 100MHz 输出端口测得的典型相位噪声:

偏移频率相位噪声 (dBc/Hz)
100 Hz-95
1 kHz-110
10 kHz-125
100 kHz-135
1 MHz-145
10 MHz-150

抖动测试

使用示波器测得 RMS 抖动:0.15ps (12kHz-20MHz 带宽)

频率稳定度

  • 短期稳定度 (ADEV @ 1s): 2×10⁻¹²
  • 长期稳定度 (±0.5ppm/年,配合 TCXO 参考)

🧪 测试运行

bash
# 运行单元测试
ctest --output-on-failure

# 运行集成测试(需要硬件)
python tests/integration/run_hwt_tests.py --board=default

📚 参考资料


🛡️ 许可证

本项目采用 MIT License。详见 LICENSE 文件。


🤝 贡献指南

欢迎提交 Bug Report 和功能请求!

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feat/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feat/AmazingFeature)
  5. 开启 Pull Request

📞 联系方式

如有技术问题或合作意向,请联系:


⚠️ 免责声明

本模块为专业级测试设备,仅供研发和技术人员使用。使用者需具备以下能力:

  • 熟悉射频电路设计和测试仪器操作
  • 理解时钟完整性、EMC/EMI 相关规范
  • 遵守实验室安全操作规程

作者不对因不当使用导致的设备损坏或人身伤害承担责任。


© 2026 CLOCK 项目团队。保留所有权利。

基于 Texas Instruments LMK5B12204 + LMK1C1102 专业时钟芯片方案开发

🎯 为高精度频率测量提供黄金时间基准 🎯

Parts

162
QtyValueFootprintReferences
41100nFCapacitor_SMD:C_0402_1005MetricC1, C2, C3, C11, C12, C13, C14, C15, C17, C18, C19, C27, C28, C29, C30, C31 +25
1210uFCapacitor_SMD:C_0402_1005MetricC6, C9, C20, C21, C22, C23, C24, C25, C47, C60, C61, C63
11Conn_CoaxialConnector_Coaxial:SMA_Amphenol_132289_EdgeMountJ1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J12
90Resistor_SMD:R_0402_1005MetricR9, R11, R18, R21, R28, R29, R35, R40, R42
81KResistor_SMD:R_0402_1005MetricR14, R15, R16, R17, R19, R20, R33, R34
849.9Resistor_SMD:R_0402_1005MetricR4, R5, R7, R8, R24, R25, R26, R27
7220 ohm@100mhzInductor_SMD:L_0603_1608MetricFB1, FB3, FB4, FB5, FB7, FB9, FB10
61uFCapacitor_SMD:C_0402_1005MetricC7, C10, C16, C40, C50, C59
4DNPResistor_SMD:R_0402_1005MetricR13, R22, R23, R32
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_PadH2, H3, H4, H5
310KResistor_SMD:R_0402_1005MetricR10, R12, R41
310uFCapacitor_SMD:C_0603_1608MetricC48, C53, C57
3HX_PH254-01-03-Z-L11_5_PCB_PIN_HEADERJLCImport:HX_PH254-01-03-Z-L11_5_PCB_PIN_HEADERH1, H6, H7
210KResistor_SMD:R_0603_1608MetricR6, R39
210nFCapacitor_SMD:C_0402_1005MetricC39, C43
22.2uFCapacitor_SMD:C_0603_1608MetricC38, C42
220pFCapacitor_SMD:C_0402_1005MetricC70, C71
24.7KResistor_SMD:R_0603_1608MetricR1, R2
25.1KResistor_SMD:R_0402_1005MetricR30, R31
280 ohm@100mhzInductor_SMD:L_0603_1608MetricFB2, FB6
2Conn_01x03_PinConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ15, J16
2LEDLED_SMD:LED_0603_1608MetricD1, D2
2LMK1C1102Package_SON:WSON-8-1EP_2x2mm_P0.5mm_EP0.9x1.6mmU2, U3
2TPS78633JLCImport:TPS78633DCQRU4, U5
110Resistor_SMD:R_0402_1005MetricR38
1100KResistor_SMD:R_0603_1608MetricR37
110uFCapacitor_SMD:C_0805_2012MetricC44
11uFCapacitor_SMD:C_0603_1608MetricC58
12.2uHJLCImport:FNR4030S2R2MTL1
122uFCapacitor_SMD:C_0805_2012MetricC55
13296W-1-103_C48997937Counter:3296W-1-103_C48997937R3
1470nFCapacitor_SMD:C_0402_1005MetricC26
1600 ohm@100mhzInductor_SMD:L_0603_1608MetricFB8
1909KResistor_SMD:R_0603_1608MetricR36
1Conn_01x02_SocketConnector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_VerticalJ14
1Conn_01x04_SocketConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ13
1Conn_01x06_SocketConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ11
1LMK5B12204Package_DFN_QFN:VQFN-48-1EP_7x7mm_P0.5mm_EP5.15x5.15mm_ThermalViasU1
1OCXO-10MJLCImport:DOPFITKR2-10MU6
1STM32F103CBTxPackage_QFP:LQFP-48_7x7mm_P0.5mmU8
1TPS63020DSJRJLCImport:TPS63020DSJRU7
1TYPE-C_16PIN_2MD_073JLCImport:TYPE-C_16PIN_2MD_073USB1
1TestPointTestPoint:TestPoint_Loop_D1.80mm_Drill1.0mm_BeadedTP2
1Volt TestPointTestPoint:TestPoint_Pad_D1.0mmTP1
1X32258MOB4SIJLCImport:X32258MOB4SIX1

Questions

How big is the CLOCK PCB?

It measures 90 × 90 mm and has 4 copper layers, 1.61 mm thick.

What parts does the CLOCK use?

162 parts, built around the LMK1C1102PW, TPS63020DSJR, TPS78633DCQ and LMK5B12204RGZ. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the CLOCK KiCad files?

From the Han-ZenX/CLOCK repository on GitHub, at the commit this page was made from: the board is hardware/schematic/v1.0/CLOCK/CLOCK.kicad_pcb and its schematic hardware/schematic/v1.0/CLOCK/CLOCK.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the CLOCK design in my own project?

Its repository states no licence, so its author keeps all rights: ask Han-ZenX before reusing the design.

More from Han-ZenX/CLOCK

1
  • 4 layers70 × 70 mmCLOCK CORE, the printed circuit board in 3D

    CLOCK CORE

    Han-ZenX/CLOCK

    High-precision frequency meter clock generation module

    145 parts1

Similar boards

  • 4 layers100 × 100 mmMic test pcb, the printed circuit board in 3D

    Mic test pcb

    jbrryhooves/sound-compass

    359 parts
  • 4 layers58.8 × 29 mmSparkAltBatteryBoardV1, the printed circuit board in 3D

    SparkAltBatteryBoardV1

    fahreddinaykut/SparkAltBatteryBoard

    A custom research-oriented battery interface and telemetry board for the DJI Spark platform, built around a standard 3S LiPo battery pack instead of the discontinued, hard-to-find OEM Smart Battery.

    46 parts20
  • 2 layers100 × 75 mmChassis controller, the printed circuit board in 3D

    Chassis controller

    KPI-Rover/ecu_hw

    Development of a printed circuit board (PCB) for the chassis controller.

    151 parts2
  • 4 layers100 × 50 mmMMS3, the printed circuit board in 3D

    MMS3

    ArthorH/MMS3

    Mini ModuCard System ❤️

    198 parts1
  • 4 layers42 × 44.4 mmSTM32 FlightController, the printed circuit board in 3D

    STM32 FlightController

    JLjoestar23/STM32_FlightController

    PCB, software, firmware, and other files related to a custom made STM32-based flight controller.

    56 parts1
  • 2 layers116.2 × 95.4 mmMacropad, the printed circuit board in 3D

    Macropad

    sarthakmmishra/macropad

    STM32F103C8T6 based macropad

    99 parts1
  • 4 layers80 × 50 mmMianCtrl H7, the printed circuit board in 3D

    MianCtrl H7

    Aiyin4Da-2/Main_Ctrl_H7

    STM32H723VGT6 MainCtrlBoard Author: Aiyin4DaGLD · Hardware: v1.2 · Updated: 2026-08-21

    153 partsMIT
  • 2 layers53 × 26 mm1st MSPM0 DEMO PCB, the printed circuit board in 3D

    1st MSPM0 DEMO PCB

    ashfaque-ur-rahman/TI_MSPM0-PCB-Design

    Texas Instruments MSPM0 microcontroller PCB design — KiCad 2-layer board based on Phil's Lab tutorial

    40 parts