S3C2440A時鐘初始化:
1.根據(jù)OM[3:2]判定系統(tǒng)時鐘來源(Fin)
2.設置CLKCON[0x4C00000C]
默認即可,如有功耗要求,可參考手冊設置,關閉部分時鐘.
3.設置CLKSLOW[0x4C000010]
默認即可,不用SLOW模式.
4.LOCKTIME設定(略),默認設置
5.設置鎖相環(huán)
MPLLCON[0x4C000004]
UPLLCON[0x4C000008]
MDIV= MP(U)LLCON[19:12] PDIV= MP(U)LLCON[9:4]SDIV= MP(U)LLCON[1:0]
約定:m=MDIV+8 ; p=PDIV+2; s=SDIV
系統(tǒng)時鐘FCLK=Fmpll=(2*m*Fin)/(p*2^s) 【與S3C2410不同】
USB時鐘UCLK=Fupll=(m*Fin)/(p*2^s)=48MHz或96MHz
【注意】
1)PPL設置時,MDIV、PDIV不能為零,否則可能導致CPU運行故障
2)MDIV、PDIV、SDIV盡可能選用手冊中提供的參考值
3)UPLLCON設置:
Fin=17MHz
MDIV=60;PDIV=4;SDIV=2 時 Fupll=48MHz
MDIV=60;PDIV=4;SDIV=1 時 Fupll=96MHz
Fin=12MHz
MDIV=56;PDIV=2;SDIV=2 時 Fupll=48MHz
MDIV=56;PDIV=2;SDIV=1 時 Fupll=96MHz
6.設置CLKDIVN[0x4C000014]
DIVN_UPLL: CLKDIVN[3]
UCLK 選擇位.UCLK可以在UPLLCON中設置為48MHz和96MHz兩種,但是最終UCLK是為USB提供時鐘的,也就是說必須是48MHz,所以當UCLK被設置成96MHz時,需要設置DIV_UPLL=1這樣
UCLK=Fupll/2=48MHz
HDIVN: CLKDIVN[2:1]
PDIVN: CLKDIVN[0]
這兩個參數(shù)決定HCLK與PCLK(當使用CAMERA CLOCK時,CAMDIVN[9:8]也會影響HCLK和PCLK),具體取值參考數(shù)據(jù)手冊.