基于IMX6ULLmini的linux裸机开发系列九:时钟控制模块

时钟控制模块

核心

4个层次配置芯片时钟

  • 晶振时钟

  • PLL与PFD时钟

  • PLL选择时钟

  • 根时钟/外设时钟

系统时钟来源

  • RTC时钟源:32.768KHz

  • 系统时钟:24MHz,作为芯片的主晶振使用

PLL和PFD倍频时钟

7路锁相环电路(每个锁相环电路都可以对时钟进行倍频)

  • ARM_PLL:驱动 ARM 内核

  • 528_PLL:频率固定是528MHZ,倍频参数固定为22,系统总线时钟

  • USB1_PLL:驱动第一个 USB 物理层

  • AUDIO_PLL:驱动音频接口

  • VIDEO_PLL:驱动视频接口

  • ENET_PLL:驱动外部以太网接口

  • USB2_PLL:驱动第二个 USB 物理层

10.3.1 Centralized components of clock management system

18.6 CCM Memory Map/Register Definition

  • CCM_ANALOG_PLL_XXX

    • 设置PPL时钟主频(pll1_main_clk)

    • 使能PLL时钟输出

  • CCM_ANALOG_PFD_XXX

    • 设置PPL下PFD的分频系数

PLL选择时钟

对 PLL1 和 PLL3 的输出进行选择、对 PLL4 和 PLL5 进行分频

  • cpu内核时钟来于PLL1时钟。

  • 刚上电时,PLL1时钟未初始化,arm内核先使用24M晶振频率,等PLL1时钟稳定输出后,再切换回PLL1时钟。

CCM_CCSR:选择pll1_sw_clk、step_clk时钟源

  • step_clk时钟源设置为24M晶振

  • pll1_main_clk时钟源设置为 step_clk或pll1_main_clk

18.5.1.5.1 Clock Switcher

外设时钟

给外设设置时钟源,外设时钟源是可以有多个选择的:

  • 梯形图标表示上一级时钟源配置

  • 正方形图标表示分频系数

图标旁边标明了相关寄存器

18.3 CCM Clock Tree

相关推荐
lihao lihao10 分钟前
软硬链接
linux·运维·服务器
YY&DS22 分钟前
Qt 嵌入 CEF 在 Linux 下必须设置 `QT_XCB_GL_INTEGRATION=xcb_egl才能加载网页
linux·开发语言·qt
辰风沐阳23 分钟前
ThinkPHP8.1 + think-swoole 4.1 使用指南(保姆级教程)
linux·后端·swoole
mounter6251 小时前
迈向硬件级无缝热升级:Linux 内核 VFIO 与 IOMMU 持久化技术的演进之路
linux·服务器·内存管理·kernel
晚风吹红霞1 小时前
Linux软件包管理器详解 —— yum与apt的使用及软件生态
linux·运维·服务器
曦夜日长2 小时前
Linux系统篇,进程概念(一):计算机体系、操作系统的认识、程序的加载过程
linux·运维·网络
似水এ᭄往昔2 小时前
【Linux网络编程】--Socket编程预备
linux·服务器·网络
皮卡狮2 小时前
环境变量详解
linux
致Great2 小时前
Claude Code 上线 Dynamic Workflows:一句话调度 1000 个子智能体并行干活
java·linux·服务器
雪度娃娃3 小时前
存储器层次结构——随机访问存储器
单片机·嵌入式硬件·计算机组成原理