<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > S3C2440的時(shí)鐘系統(tǒng)

          S3C2440的時(shí)鐘系統(tǒng)

          作者: 時(shí)間:2016-11-24 來(lái)源:網(wǎng)絡(luò) 收藏

          3、Lock Time之后,MPLL輸出正常,CPU工作在新的FCLK下。

          現(xiàn)在對(duì)FCLK進(jìn)行總結(jié)一下,F(xiàn)CLK,在CPU上電后,晶振開始正常工作,此時(shí)FCLK=晶振頻率,注意此時(shí)不存在MPLL,經(jīng)過(guò)PLL電路后,得到MPLL,UPLL。此時(shí)FCLK=MPLL。

          總的來(lái)說(shuō)分頻比為FCLK:HCLK:PCLK=1:4:8,這個(gè)分配標(biāo)準(zhǔn)是由誰(shuí)定的呢,就是我們的CLKDIVN寄存器,看下datasheet中的介紹大家就清楚了:

          S3C2440使用了三個(gè)倍頻因子MDIV、PDIV和SDIV來(lái)設(shè)置倍頻,通過(guò)寄存器MPLLCON&UPLLCON可設(shè)置倍頻因子。

          MPLLCON的輸入輸出頻率間的關(guān)系為

          FCLK=MPLL=(2*m*Fin)/(p*2^s) ,其中m=(MDIV+8), p=(PDIV+2), s=SDIV。

          UPLLCON的輸入輸出頻率間的關(guān)系為

          UCLK=UPLL=(m * Fin) / (p * 2^s) ,其中m=(MDIV+8), p=(PDIV+2), s=SDIV。

          手工計(jì)算相對(duì)復(fù)雜些,我們可以根據(jù)欲得到的主頻FCLK大小,直接通過(guò)查表來(lái)獲知各倍頻因子的設(shè)置參數(shù)。

          對(duì)于12MHz的晶振,要想經(jīng)過(guò)PLL電路得到405MHz,查表得應(yīng)該設(shè)置MDIV、PDIV、SDIV分別為0x7f、2、1。

          那在哪里設(shè)置MDIV、PDIV和SDIV這3個(gè)值呢,還是datasheet:

          從上圖可以看出,我們只需要設(shè)置MPLLCON寄存器就可以確定FCLK了,再通過(guò)CLKDIVN寄存器我們就可以設(shè)置FCLK、HCLK、PCLK三者之間的比例了。

          關(guān)于時(shí)鐘設(shè)置的還有一個(gè)寄存器,就是LOCKTIME,在上面的時(shí)序圖中可以看到它的身影,datasheet中介紹:

          前面說(shuō)過(guò),MPLL啟動(dòng)后需要等待一段時(shí)間(Lock Time),使得其輸出穩(wěn)定。位[31:16]用于UPLL,位[15:0]用于MPLL。使用確省值0x00ffffff即可。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: S3C2440時(shí)鐘系

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();