无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

10.1掌握ARM芯片時(shí)鐘體系

2020-08-19 15:58 作者:韋東山  | 我要投稿

第001節(jié)_S3C2440時(shí)鐘體系結(jié)構(gòu)

S3C2440是System On Chip(SOC),在芯片上不僅僅有CPU還有一堆外設(shè)。

至于有哪些外設(shè),可以查看參考手冊(cè)。在S3C2440參考手冊(cè)的第一章PRODUCT OVERVIEW里面有個(gè)BLOCK DIAGRAM圖:

Chapter10 lesson1 001.png

可以把該圖分為上中下三塊,上面的是與CPU密切相關(guān)的,工作于FCLK;中間的一些對(duì)性能要求較高的設(shè)備,像LCD顯示、相機(jī)等,在AHB BUS,H即為High,高速之意,工作于HCLK;下面的是一些對(duì)性能要求不那么高的低速設(shè)備,在APB BUS,P即為Peripheral之意,工作在PCLK。

在參考手冊(cè)的特性里介紹了S3C2440的工作頻率,F(xiàn)clk最高400MHz,Hclk最高136MHz,Pclk最高68MHz。

如何得到以上的三種時(shí)鐘?

硬件電路上有個(gè)12M的晶振,作為時(shí)鐘源產(chǎn)生12MHz的頻率,經(jīng)過SOC的PLL(鎖相環(huán))倍頻產(chǎn)生Fclk、Hclk、Pclk。

再具體看看第7章的時(shí)鐘,在Clock Generator Block Diagram展示了時(shí)鐘的產(chǎn)生。

Chapter10 lesson1 002.png

在該圖的左上角,晶振和一個(gè)外部時(shí)鐘接在一個(gè)選擇器上,這個(gè)選擇器通過OM[3:2]的值來決定選擇哪個(gè)時(shí)鐘源。然后生成的MPLL(Main PLL)和UPLL(USB PLL),MPLL直接提供給FCLK,通過HDIVN分頻給HCLK,通過PDIVN分頻給PCLK,再傳給下面的各個(gè)設(shè)備。

Chapter10 lesson1 003.png

第002節(jié)_編程提高運(yùn)行時(shí)鐘

怎么編程控制MPLL、HDIV、PDIV,使FCLK=400MHz,HCLK=100MHz,PLCK=50MHz?

需要設(shè)置MPLLCON的FCLK=400MHz,設(shè)置CLKDIVN的HCLK=FCLK/4,PCLK=FCLK/8。?

  1. 首先看CLKDIVN寄存器:

Chapter10 lesson2 001.png

想設(shè)置HCLK=FCLK/4需要將HDIVN[2:1]設(shè)置為10,同時(shí)將CAMDIVN[9]設(shè)置為0。

查看CAMDIVN[9]的初始值默認(rèn)就是0,因此只需要設(shè)置HDIVN[2:1]為10。

Chapter10 lesson2 002.png

想設(shè)置PCLK=FCLK/8需要將PDIVN[0]設(shè)置為1,因此整個(gè)CLKDIVN寄存器設(shè)置如下:


2. 現(xiàn)在看如何使FCLK=400MHz.

在手冊(cè)的PLL VALUE SELECTION TABLE里列出了常見情況PLL的設(shè)置,我們輸入的是晶振的12MHz,輸出需要400MHz,因此根據(jù)表格需要設(shè)置 ? MDIV=92(0x5C),PDIV=1,SDIV=1;

Chapter10 lesson2 003.png

在手冊(cè)介紹了MPLL的m、p、s與MDIV、PDIV、SDIV之間的關(guān)系:?

PLL控制寄存器如下:

Chapter10 lesson2 004.png

因此需要配置(92<<12)|(1<<4)|(1<<0),?

3.此外,手冊(cè)還提到,需要SetAsyncBusMode。

完整的start.S:?



10.1掌握ARM芯片時(shí)鐘體系的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
青州市| 肥乡县| 兖州市| 华阴市| 黑河市| 双峰县| 怀来县| 邢台市| 梓潼县| 固安县| 博客| 南岸区| 桓仁| 宜兴市| 贵港市| 赤水市| 竹北市| 牙克石市| 鹰潭市| 康平县| 南陵县| 稻城县| 墨玉县| 林西县| 舒城县| 临邑县| 黄梅县| 株洲市| 大悟县| 大宁县| 乌兰浩特市| 南昌县| 菏泽市| 蒙城县| 钟祥市| 乳山市| 宿松县| 文安县| 洞口县| 乐安县| 乌拉特前旗|