ARM --- day 6 时钟

1. PLL、Prescaler、PFD的作用分别是什么?

时钟设置:

PLL:phased locked loop,锁相环(倍频) 24MHZ*N(N是整数)

Prescaler:预分频器(分频) 24MHZ*M(M是整数)

PFD:phased fraction divder,相位分数分频器(倍频/降频)

24MHZ*(N/M) N/M>1:倍频 N/M<1:降频 (N、M是整数)

2. SOC时钟配置你做了哪些工作?

1.配置ARM的时钟为528MHZ,使得CortexA7内核工作在528MHZ频率下

2.配置PLL2和PLL3下的8个PFD

3.配置3个根时钟,为后续外设工作提供个时钟频率

3. GIC支持多少个优先级?IMX6ULL中支持多少个优先级?

GIC支持1020个优先级;IMX6ULL中支持160个优先级。

其中0-15是软中断SGI

16-31是私有中断PPI

32-1020是共享外设中断SPI

4. 完善时钟代码,根据时钟树理解ARM、PFD、三个根时钟配置过程

1.配置ARM的时钟为528MHZ,使得CortexA7内核工作在528MHZ频率下

对于ARM时钟(没有时钟门)来说,填入倍频因子,PPL1到达一个特别高的频率,到达ARM内核里,频率的极具升高会导致ARM内核死机。所以,操作:先让ARM内核工作在step_clk下:先工作在一个比较低的频率下(时钟源选osc_clk:24MHZ)

  1. 先选择osc_clk,让step_clk为24MHz。

  2. 再将PLL1的输出改成step_clk,让ARM暂时工作在24MHz;

设置好倍频因子,PPL1就是1056MHZ ,等到这个频率,经过一个二分频,到达528MHZ之后,工作频率稳定之后,再切换到pll1_main_clk,ARM可以比较稳定的工作在528MHZ下

  1. 配置PLL为1056,注意设置倍频因子之前先把PLL之后的二分频设置好,

避免ARM内核故障!!

  1. 最后改回pll1_main_clk

2.配置PLL2和PLL3下的8个PFD

3.配置3个根时钟,为后续外设工作提供个时钟频率

相关推荐
leisoo80973 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
青瓦梦滋4 小时前
传输层UDP/TCP协议
linux·网络·c++·网络协议·tcp/ip·udp
ltl4 小时前
机密计算:SGX、SEV-SNP、TDX 与 ARM CCA
linux
ltl4 小时前
互联与网络:NVLink、InfiniBand、RoCE 与国产替代
linux
码上上班4 小时前
tengine知识点
linux·服务器·centos
蒸蒸yyyyzwd5 小时前
秋招不熟悉力扣学习笔记1
笔记·学习·leetcode
振南的单片机世界6 小时前
PVD掉电中断——让单片机“咽气前”写完遗书
arm开发·stm32·单片机·嵌入式硬件
小弥儿7 小时前
GitHub今日热榜 | 2026-08-11:图原生基础设施首日登顶
学习·开源·github
en.en..7 小时前
计算机字节序(大小端)核心原理与代码实战
arm开发
雾时之林7 小时前
Linux--软件管理、源码包安装
linux·服务器·数据库