同样的主频,低晶振高倍频还是高晶振低倍频?

2020-01-01 17:45发布

本帖最后由 金 {MOD}大元宝 于 2017-1-3 12:53 编辑

以STM32F407为例,如果我要配置主频168M,,

两种配置方式,一种晶振8M,PLL倍频21。

另外一种是晶振24M,PLL倍频7。

那种主频的稳定性更好?


25M配置

  1. *-----------------------------------------------------------------------------
  2.   *        HSE Frequency(Hz)                      | 25000000
  3.   *-----------------------------------------------------------------------------
  4.   *        PLL_M                                  | 25
  5.   *-----------------------------------------------------------------------------
  6.   *        PLL_N                                  | 336
  7.   *-----------------------------------------------------------------------------
复制代码


8M配置

  1. *-----------------------------------------------------------------------------
  2.   *        HSE Frequency(Hz)                      | 8000000
  3.   *-----------------------------------------------------------------------------
  4.   *        PLL_M                                  | 8
  5.   *-----------------------------------------------------------------------------
  6.   *        PLL_N                                  | 336
  7.   *-----------------------------------------------------------------------------
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
mangocity
1楼-- · 2020-01-01 22:00
PLL 只跟踪相位误差,不能消除频率误差。
假设 PLL 的传递函数为 G(s)
有 Fout = Fin * G(s)
同时,频率误差也放大相同的倍数。 Eout = Ein * G(s)

先抛个砖,看能不能引出大师的玉。
20061002838
2楼-- · 2020-01-02 02:58
一样的,407的PLL是先分频,再倍频
规格书要求分频之后的时钟是1M,楼主贴出来的配置也能说明,两个配置里面PLL倍频是一样的
金色大元宝
3楼-- · 2020-01-02 05:50
20061002838 发表于 2017-1-3 13:10
一样的,407的PLL是先分频,再倍频
规格书要求分频之后的时钟是1M,楼主贴出来的配置也能说明,两个配置里 ...

那您的意思是,对407来说,分频以后的时钟都是1M,外置的晶振从8-26M效果都是一样的对吗?
leeseel
4楼-- · 2020-01-02 09:08
 精彩回答 2  元偷偷看……
20061002838
5楼-- · 2020-01-02 10:07
金 {MOD}大元宝 发表于 2017-1-3 13:26
那您的意思是,对407来说,分频以后的时钟都是1M,外置的晶振从8-26M效果都是一样的对吗? ...

是的
规格书上面范围是1-2M,典型值1M
用STM32CubeMX自动配置的时候,也会出来提示要在1-2M之间

QQ图片20170103134555.png (35.11 KB, 下载次数: 0)

下载附件

2017-1-3 13:32 上传

wye11083
6楼-- · 2020-01-02 12:46
mangocity 发表于 2017-1-3 12:49
PLL 只跟踪相位误差,不能消除频率误差。
假设 PLL 的传递函数为 G(s)
有 Fout = Fin * G(s)

pll有一个输入带宽,在带宽内的误差会被滤波掉(即pll的vco接近中心频率)。但是vco电压毕竟也是dac控制的,因此pll通常都有几十至数百ps的jitter,就是这么引起的。超高精度的pll估计dac位数也很高,而且必须要有很强的算法去跟踪频率,否则来个100ppm的抖动就可能丢失信号了。
不过一般还好,时钟源一般是比较稳定的,pll可以正常跟踪。
至于pll相位,我也不太明白它的工作原理,但是分析它有可能使用n/N的分压,用上升沿和下降沿控制后面输出。像xilinx应该只有16个相位,altera据说可以到1/256T。

一周热门 更多>