s3c2440系統時鐘

2021-06-16 17:47:19 字數 1674 閱讀 9392

1、flck、hclk和pclk的關係

一般來說,mcu的主時鐘源主要是外部晶振或外部時鐘,而用的最多的是外部晶振。在正確情況下,系統內所使用的時鐘都是外部時鐘源經過一定的處理得到的。由於外部時鐘源的頻率一般不能滿足系統所需要的高頻條件,所以往往需要pll(鎖相環)進行倍頻處理。

在s3c2440中,有2個不同的pll,乙個是mpll,另乙個是upll。upll是給usb提供48mhz。在這裡,我們主要介紹mpll。外部時鐘源經過mpll處理後能夠得到三個不同的系統時鐘:fclk、hclk和pclk。

fclk是主頻時鐘,用於arm920t核心;

hclk用於ahb匯流排裝置,如arm920t,記憶體控制,中斷控制,lcd控制,dma以及usb主模組;

pclk用於apb匯流排裝置,如外圍裝置的看門狗,iis,i2c,pwm,mmc介面,adc,uart,gpio,rtc以及spi。這三個系統時鐘(fclk、hclk和pclk)是有一定的比例關係,這種關係是通過暫存器clkdivn中的hdivn位和pdivn位來控制的,因此我們只要知道了fclk,再通過這兩位的控制,就能確定hclk和pclk。

而fclk是如何得到的呢?它是通過輸入時鐘(即外部時鐘源)的頻率,經過乙個計算公式(具體公式請查閱資料手冊)得到的,這個計算公式還需要三個引數(mdiv、pdiv、sdiv),而這三個引數是經過暫存器mpllcon配置得到的。

最後,我們用最清晰的線路來繪製一下時鐘的產生過程:外部時鐘源→通過暫存器mpllcon得到fclk→再通過暫存器clkdivn得到hclk和pclk。這個配置過程在啟動檔案中就已完成。在本開發板上,外部晶振為12mhz,進過mpll倍頻以後得到400mhz的fclk,而fclk、hclk、pclk之間的比例關係為1:4:8,因此hclk為100mhz,pclk為50mhz。

2、輸入時鐘fin與主頻fclk的關係

現代的cpu基本上都使用了比主頻低的多的時鐘輸入,在cpu內部使用鎖相環進行倍頻。對於s3c2440,常用的輸入時鐘fin有兩種:12mhz和16.9344mhz,那麼cpu是如何將fin倍頻為fclk的呢?

s3c2440使用了三個倍頻因子mdiv、pdiv和sdiv來設定將fin倍頻為mpll,也就是fclk

mpll=(2*m*fin)/(p*2^s) where m=(mdiv+8), p=(pdiv+2), s="sdiv"

暫存器mpllcon就是用來設定倍頻因子的

理論上,你可以通過設定該暫存器來實現不同的頻率,然而,由於實際存在的各種約束關係,設定乙個適當的頻率並不容易,手冊上列出了一些常用頻率的**,

例如,假設輸入時鐘fin=16.9344m,mdiv=110, pdiv="3", sdiv="1",

利用上面的公式,fclk=2*16.9344*(110+8)/((2+3)*2)=399.65

3、關於usb時鐘

s3c2440有兩個鎖相環,乙個主鎖相環mpll提供給fclk的,另外乙個upll是提供給usb時鐘(48mhz)的,與mpll一樣,upll的產生也是通過upllcon暫存器設定分頻因子得到,計算公式稍有不同:

upll=(m*fin)/(p*2^s) where m=(mdiv+8), p=(pdiv+2), s="sdiv",同樣,可以通過查表得到乙個合適的值。

最後值得一提的是,在clkdivn的第三位divn_upll用來設定usb時鐘uclk和upll的關係,如果upll已經是48mhz了,那麼這一位應該設定為0,表示1:1的關係,否則是1:2的關係

S3C2440裸機 時鐘

目錄 1.s3c2440的時鐘體系 1.1.s3c2440結構框圖 1.2 s3c2440時鐘樹 1.3 s3c2440上電順序 2.暫存器配置 2.1clkdivn暫存器 2.2mpllcon暫存器 2.3設定cpu為非同步模式 3.程式設計 4.實驗 從上面的結構圖可以看出,s3c2440主要分...

S3C2440時鐘描述

1 上電幾毫秒後,晶振輸出穩定,fclk 晶振頻率,nreset訊號恢復高電平後,cpu開始執行指令。2 我們可以在程式開頭啟動mpll,在設定mpll的幾個暫存器後,需要等待一段時間 lock time mpll的輸出才穩定。在這段時間 lock time 內,fclk停振,cpu停止工作。loc...

S3C2440 時鐘計算

s3c2440有兩個pll phase locked loop 乙個是mpll,乙個是upll。mpll用於cpu及其他外圍器件,upll用於usb。s3c2440a 中的時鐘控制邏輯可以產生必須的時鐘訊號,包括cpu 的fclk,ahb 匯流排外設的hclk 以及 apb 匯流排外設的pclk。s...