智能车制作

标题: 谈谈个人对XS128上锁相环、频率的一些见解,抛砖引玉 [打印本页]

作者: lsa4100    时间: 2010-10-29 12:33
标题: 谈谈个人对XS128上锁相环、频率的一些见解,抛砖引玉
OSC、FOSC、OSCCLK:我认为这三者一样,是振荡器频率,即是我们外加晶振频率

SYNR 时钟合成寄存器
VCOFRQ[7:6]:不知道,跪求高人解答!!!
SYNDIV[5:0]:不知道,跪求高人解答!!!

REFDV时钟分频寄存器
REFFRQ[7:6]:不知道,跪求高人解答
REFDIV[5:0]:不知道,跪求高人解答

FVCO:应该是系统频率(有错请更正)

FPLL、PLLCLK:我认为是一样的,即锁相环频率

FBUS、Bus Clock:我认为是一样的,即总线频率

POSTDIV:貌似是分频控制,应该是控制FVCO和PLLCLK的分频比,一般设置为0,这时FPLL= FVCO/1=FVCO

初步设想:
1、FVCO= 2*FOSC*(SYNDIV + 1)/(REFDIV + 1),我认为OSC、FOSC、OSCCLK都是一样的,即晶振频率
2、FPLL= FVCO/(2 × POSTDIV),FPLL应该和PLLCLK一样,都是锁相环频率,POSTDIV等于0时默认为分子为1,即FPLL= FVCO/1=FVCO
3、FBUS= FPLL/2,FBUS为总线时钟频率

所以综合起来就有:FBUS=[2*FOSC*(SYNDIV + 1)/(REFDIV + 1)]/2=FOSC*(SYNDIV + 1)/(REFDIV + 1)


再看看龙丘80MHz的超频源代码
void SetBusCLK_80M(void)
{  
    CLKSEL=0X00;     //disengage PLL to system
    PLLCTL_PLLON=1;    //开启锁相环
    SYNR =0xC0 | 0x09;  //我理解,SYNR只是低6位有效,所以经过运算后SYNR=9                    
    REFDV=0x80 | 0x01; //我理解,REFDV只是低4位有效,所以经过运算后REFDV=1
    POSTDIV=0x00;       //POSTDIV=0x00=0,则FPLL=FVCO=PLLCLK,所以PLLCLK=FVCO=2*16*(1+9)/(1+1)=160MHz;
    _asm(nop);          //所以总线时钟BUS CLOCK=PLLCLK/2=80MHz
    _asm(nop);
    while(!(CRGFLG_LOCK==1));   //when pll is steady ,then use it;
    CLKSEL_PLLSEL =1;           //engage PLL to system;
}

好了,个人意见发表完毕,有错误的请更正,别扔砖头哈

砖头我自己仍就行了
作者: 小当    时间: 2010-10-29 13:32
本帖最后由 小当 于 2010-10-29 13:47 编辑

synr和refdv都是低6位来设定所要超的频率,其高2位是根据你要超的频率来配置,通过合理的配置VCOFRQ,REFFRQ来提高系统时钟稳定性。具体可以看DATASHEET,如下图:[attach]3453[/attach]Page239[attach]3454[/attach]Page240

SYNR =0xC0 | 0x09;  //VCOFRQ[7:6]=0b11;SYNDIV[5:0]=0b001001              
REFDV=0x80 | 0x01; //REFFRQ[7:6]=0b10;REFDIV[5:0]=0b000001   
如:fREF=fOSC/(REFDIV + 1)=16/(1+1)=8;所以6MHz < fREF <= 12MHz   REFFRQ[7:6]为10
明白了吗?
作者: lsa4100    时间: 2010-10-29 15:34
回复 2# 小当


不好意思,由于英文文档看不太明白,再次问些问题:

1、你刚才说“如:fREF=fOSC/(REFDIV + 1)=16/(1+1)=8;所以6MHz < fREF <= 12MHz   REFFRQ[7:6]为10
明白了吗”,我纳闷fREF和我想要超到的频率有什么关系呢

2、你还说“synr和refdv都是低6位来设定所要超的频率,其高2位是根据你要超的频率来配置,通过合理的配置VCOFRQ,REFFRQ来提高系统时钟稳定性”,麻烦解释下VCOFRQ、REFFRQ和系统稳定性的关系,以及怎么样设置VCOFRQ,REFFRQ提高系统稳定性!


谢谢了
作者: 小当    时间: 2010-10-29 21:15
回复 3# lsa4100


    再多的解释也比不过自己把DATASHEET看明白,去官网下,所在的页码我已经告诉你了。
作者: vgonlan    时间: 2011-2-10 21:07
明白了,谢谢二楼,谢谢楼主。
作者: lsa4100    时间: 2011-3-6 13:35
回复 5# vgonlan


   


  共同学习
作者: s614857575    时间: 2011-3-21 15:36
啊,谢谢啦
作者: zhjb1    时间: 2011-3-23 20:07
很容易看明白的,例如VCOFRQ[7:6]——表示XXXX寄存器中的高2位7,6,代表VCOFRQ功能设置的数据;SYNDIV[5:0]——表示XXXX寄存器中的低6位5,4,3,2,1,0,代表SYNDIV功能的设置参数。几乎所有厂家单片机的说明都是这样标示的。
作者: lsa4100    时间: 2011-3-26 16:13
回复 8# zhjb1


    谢谢  我自己再体会下
作者: 野人LG    时间: 2011-4-1 13:13
终于明白啦。。。谢谢大家
作者: lsa4100    时间: 2011-4-2 18:14
回复 10# 野人LG


    呵呵  论坛就是个学习的地方啊
作者: z1yxyq2008    时间: 2011-4-3 22:52
号啊
作者: pangyuo    时间: 2011-4-9 14:02
不甚了解 关注中
作者: popkaka    时间: 2011-4-9 20:29
看看资料吧
作者: gzc581    时间: 2011-4-15 00:20
回复 8# zhjb1


    还是不太懂括号里的内容,您能再解释下[x:x]的意义吗?
作者: zhjb1    时间: 2011-4-15 19:39
[7:6]表示这个寄存器的高7,6位的设置——相当于0bxxnnnnnn,[5:0]表示这个寄存器的低5~0位的设置——相当于0bnnxxxxxx。
x是设置位,n不是此参数的设置位
作者: lsa4100    时间: 2011-4-17 09:13
回复 16# zhjb1


   
作者: 剑皇1234    时间: 2011-4-17 20:35
给力 解决了我的问题
作者: gzc581    时间: 2011-4-19 00:07
回复 16# zhjb1


    谢谢啦,这下很明白了
作者: junjun1990    时间: 2011-4-21 08:51
正想了解这方面的问题呢
作者: 周江民1990    时间: 2011-5-16 01:47
好啊!!!
作者: lsa4100    时间: 2011-5-16 17:55
回复 21# 周江民1990


   
作者: zhu_xuekui    时间: 2011-11-7 22:54
明白了,谢谢。。。。。
作者: 561609030    时间: 2011-11-10 21:00

作者: lsa4100    时间: 2011-11-10 21:35
回复 24# 561609030


    什么情况?
作者: longhunlanxue    时间: 2011-11-20 15:56
有群不?
作者: lsa4100    时间: 2011-11-20 16:39
回复 26# longhunlanxue


    群?我木有,你自己在论坛找找。我就快毕业了不搞那玩意了
作者: longhunlanxue    时间: 2011-11-20 16:45
回复 27# lsa4100
作者: 聪狼    时间: 2011-11-26 10:10
和楼主有同样的问题,问一下,楼主是怎么解决的
作者: 清明    时间: 2011-11-27 19:11

作者: 落叶霖    时间: 2011-11-28 18:49
fvco是压控振荡器最终输出的频率,也就是你最终要得到频率,要根据这个设定高二位,而低六位则对应于锁相环中的分频器分频系数,只有这两个都设置合理才能使得始终稳定[img][img][/img][/img]
作者: lsa4100    时间: 2011-11-28 21:35
回复 29# 聪狼


    后面马马虎虎理解了,就没再去钻研。反正能稳定超到所需要的频率就行
作者: 聪狼    时间: 2011-11-29 18:34
回复 32# lsa4100


    我也是
作者: yaozhifeng    时间: 2012-2-6 10:01
PLL初始化应该很简单啊
作者: x_yang1989723    时间: 2012-2-9 13:26
有楼主这种探索精神,加上二楼的详细解答,很感谢,我们这些新手学习了,也懂了,顶起!!!
作者: 李帅李帅    时间: 2012-2-29 16:39
:):)
作者: 映水云    时间: 2012-3-4 10:14
好强,终于弄明白了,哈哈,多谢!
作者: guoshunkai521    时间: 2012-4-9 22:04
慢慢理解!
作者: shhu1993    时间: 2013-3-21 09:30
解决了,谢谢,

作者: dlyt03    时间: 2013-3-22 10:04
多谢指点




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2