嵌入式系统与单片机|技术阅读
登录|注册

您现在的位置是:嵌入式系统与单片机 > 技术阅读 > I.MXRT 时钟扩频

I.MXRT 时钟扩频

    系统 PLL 是系统内部总线、内部处理逻辑、SDRAM 接口和 NAND/NOR 接口模块等的时钟源。而系统 PLL 时钟的频率都是窄带信号,信号强度集中,这是产生电磁辐射的主要来源,如下图所示。比如用来调整外扩 SEMC接口 SDRAM的频率等等。频谱扩展对 SDRAM 读 / 写性能影响很小, 对应用程序没有影响。

    引入时钟扩频技术来降低信号能量的集中,该技术将时钟能量在一定带宽内进行频谱扩展和能量分散,从而降低电磁能量的峰值,从而更容易过EMC RE辐射发射(Radiated Emission)测试。

    i.MXRT 系列的系统 PLL 支持时钟扩频,如果外设采用此 PLL 作为时钟源,可以启用此功能来降低 EMI 问题的影响。以下 PLL 在 RTXXXX 上支持扩频特性,需要将外设的时钟源选到支持扩频功能的时钟上。

    对于 RT 系列,SYS_PLL2,AUDIO_PLL 和 VIDEO_PLL 支持扩频(向下扩频)。扩频范围是指 PLL 向下扩展的频率大小。例如,6 MHz 扩频范围意味着 PLL 的频率将在目标频率和目标频率减 6 MHz 之间反复。频率步长是指频率变化步长的大小。要启用扩频功能,请使用如下扩频软件代码来配置 SDK 中的寄存器。0x40c84260 用于配置STOP(位[31-16]) 和 STEP(位[14:0]),位8 是使能位。频率改变:Frequency change =STOP/8*24Mhz。Step 步进值:每次最大频率变化 =STEP/8*24Mhz,0x40842a0 用于配置数值 8。

因此,如下PLL528 的配置

STOP =0x480; B =0x960; STEP =0x06; Frequency change =12Mhz,

    每次最大的频率变化为 60Khz。此时 PLL528 将在 528MHz 和 516MHz 之间回扫,回扫的步长为 60 KHz。

STOP =0x240; B =0x960; STEP =0x06; Frequecy change =6MHz,每次最大的频率变化为 60KHz。

*(uint32_t *)(0x40c84260) =0x04808006; //12Mhz

//*(uint32_t *)(0x40c84260) =0x02408006; //6Mhz

*(uint32_t *)(0x40c842a0) =0x00000960; 

    对 I.MXRT10xx 系列,STOP, B 及 STEP 可以在 SYS_PLL2_SS 和 SYS_PLL2_MFD 中配置。 

    对 I.MXRT11XX ,STOP, B 及 STEP 可以在 CCM_ANALOG_PLL_SYS_SS 和 CCM_ANALOG_PLL_SYS_DENOM 中配 置。当初始化 PLL 的时候,扩频功能可以同时配置。在代码中填写 STOP,B 及 STEP 进结构体来初始化 PLL。一旦使能 PLL,扩频功能同时打开。

    备注:在上电配置时钟后使能上述两行代码配置就可以开启扩频功能,注意扩频功能和低功耗 SNVS 模式没有任何关系,使能扩频不会影响进入SNVS低功耗以及唤醒的情况。

    默认扩频是关闭的,关闭代码如下:

*(uint32_t *)(0x40c84260) =0x0;//默认值,扩频功能是关闭的。

//*(uint32_t *)(0x40c84260) =0x02408006; //6Mhz

*(uint32_t *)(0x40c842a0) =0x3FFFFFFF; 


参考文献:

1. https://www.nxp.com.cn/docs/zh/application-note/AN13202.pdf

2.《如何在 RT 系列上使能扩频功能》(文档 AN2879)。

https://www.nxp.com.cn/docs/zh/application-note/AN12879.pdf

    在 RT1060 产品应用中,启用系统时钟的扩频功能后,噪声强度下降了约 5 dbm。