ARM11 s3c6410系列教程之一:時鐘
S3C6410的作為ARM11處理器的一種常見型號,與ARM公司和三星公司對MCU的貢獻(xiàn)分不開。閑話少說,現(xiàn)在我們來揭開該處理器的時鐘控制。
本文引用地址:http://2s4d.com/article/203122.htm對于一個MCU來說,系統(tǒng)時鐘的重要性不言而喻。在該處理器的數(shù)據(jù)手冊中我們可以看到這樣的介紹:ARM1176JZF-S core clock rate maximum is 533MHz@1.1 V, 667MHz@1.2V (VDDarm),說明該處理器最高可以達(dá)到667MHz。還有更振奮人心的消息:The clock generator consists of three PLLs (Phase Locked Loop) which generate high frequency clock signals up to 1.6GHz,在如此高的時鐘頻率工作下,處理器的工作能力得到了大大提高。
我們來看下友善板子的原理圖:
在該原理圖中我們看到提供給S3C6410的時鐘為12MHz。這不禁讓我們感到迷惑,為什么在如此低的時鐘頻率下可以實(shí)現(xiàn)達(dá)到500MHz-600MHz的時鐘頻率呢?這就是ARM處理器的一個魅力也是讓人不容易理解的地方。其實(shí)這是由于該處理器擁有一個相位鎖存器PLL(phase locked loop)。在S3C6410中有三個PLL,一個用于設(shè)置ARMCLK,一個用于HCLK和 PCLK,一個用于外圍設(shè)備的時鐘設(shè)置。ARMCLK用于給ARM核提供時鐘, HCLK用于AXI/AHB總線, PCLK用于 APB 總線。
S3C6410的時鐘控制器可以產(chǎn)生系統(tǒng)需要的各種時鐘信號,如下圖所示:
在上圖的時鐘描述圖中,0通道表示系統(tǒng)默認(rèn)打開,1通道表示系統(tǒng)默認(rèn)關(guān)閉 。當(dāng)設(shè)定相應(yīng)寄存器后,打開1通道,同時關(guān)閉0通道。從上圖中可以看出,假如使能XTIpll ,時鐘通過0通道經(jīng)過FINapll利用MUXapll后到達(dá)DIVapll后,經(jīng)過分頻,將12MHz的時鐘頻率提供給ARMCLK,使ARM核工作在12MHz的時鐘頻率下。如果我們通過配置APLL可以使系統(tǒng)工作在更高的頻率。我這個板子是1.1v的核心電壓,所以時鐘頻率只能達(dá)到533MHz,若過高,就像電腦的超頻一樣,會產(chǎn)生讓人后悔的結(jié)果。我們來分析下APLL如何配置,時系統(tǒng)時鐘達(dá)到我們需要的523頻率。
評論