下圖是S3C2440芯片的整體架構圖:
其中,
AHB BUS為高速設備的總線,H即為high的意思。
APB BUS為低速設備的總線,P為英文單詞peripheral(外圍設備)。
不同的總線,掛載在上面的設備運行的頻率肯定是不一樣的,在我們這款S3C2440芯片中:
Fclk就是CPU的運行頻率,最高可達400MHz
Hclk為高速設備的運行頻率,最高可達136MHz
Pclk為低速設備的運行頻率,最高可達68MHz
那么這三種時鐘頻率是怎么得到的,他們又是什么關系呢?
S3C2440這款芯片的時鐘源為一個12M的晶振,再配合PLL(鎖相環(huán))就可以獲得相應的頻率。這里我們不對PLL的工作原理做詳細,有興趣的可以自查(好吧,我承認我不會)。下面給出一個時鐘頻率生成的結構圖:
圖中有些名詞我們先解釋一下:
OSC是晶振的意思
OM為選擇器,可以設置它選擇不同的時鐘源
其中,OM[3:2]的設置可以獲得不同的時鐘來源,晶振(crystal)或者外部的時鐘源(EXTCLK)
MPLL:main PLL
UPLL:USB PLL(用于usb設備)
上面的時鐘頻率生成圖雖然看起來畫了很多的東西,但是我們可以總結為一個簡單的流程,就是:
晶振 -> MPLL -> FCLK -> CPU
| |
| |(HDIV) -> HCLK ->AHB總線->nand flash控制器、
| |
| |(PDIV)->PCLK ->APB總線->I2C、GPIO、SPI等
|
| -> UPLL -> USB
我們可以得到,F(xiàn)clk是由晶振和MPLL得到的,而Fclk是用于CPU運行的頻率。Fclk再經過分頻器(HDIV和PDIV)之后就可以得到Hclk和Pclk。
下面我大概說明一下獲得Fclk的一個過程:
當power變成高電平,也就是上電后:
復位引腳nRESET先維持一段時間(n代表低電平有效),等各種狀態(tài)穩(wěn)定后,才被拉高
上電后初始階段,F(xiàn)CLK=晶振頻率
nRESET被拉高后,CPU開始運行,PLL鎖存OM[3:2]的值
在lock time期間,CPU停止運行。PLL開始工作
Lock time后,F(xiàn)CLK等于PLL輸出的新時鐘,CPU也開始工作
到這里,我們就大概知道這三種頻率是怎么來的,以及他們的關系是什么樣的了。雖然原理講了一大堆,但是在實際的編程中,也就是設置一些寄存器的工作,了解原理只是為了我們更好的讀懂芯片手冊并設置寄存器。
這里我們舉個例子,看一下怎么去設置寄存器,得到我們想要的時鐘頻率。假如我們想得到的時鐘頻率比是:
FCLK:HCLK:PCLK = 400MHz : 100MHz : 50MHz
(1)時鐘頻率比為1:4:8,所以我們要設置CLKDIVN寄存器為b0101=0x5(默認CAMDIVN[9]=0)
(2)由芯片給出的Fclk計算公式是:
Mpll就是我們要求的Fclk,F(xiàn)in是晶振的頻率12MHz,那么MDIV、PDIV和SDIV的值怎么得到呢?我們看下面的表格可以看出來,要得到12MHz的輸入和400MHz的輸出時,MDIV=92, PDIV=SDIV=1。那么MOLLCON寄存器的值就是(92<<12) | (1<<4) | (1<<0)
(3)至于locktime的設置,我們用默認值就好了(一般不確定怎么設置的時候。用默認值就好了)
根據上面的三個步驟,我們匯總一下可以到下面的代碼:
/* 2.設置時鐘 */
/*設置MPLL, FCLK:HCLK:PCLK = 400MHz : 100MHz : 50MHz*/
/*為了保險先初始化一下locktime*/
ldr r0, =0x4C000000
ldr r1, =0xFFFFFFFF
str r1, [r0]
/*設置CLKDVIN:
*HDIVN[2:1] : 10 - HCLK=FCLK/4
*PDVIN[0] : 1 - PCLK=HCLK/2
*/
ldr r0, =0x4C000014
ldr r1, =0x5
str r1, [r0]
/*設置CPU為異步模式*/
mrc p15,0,r0,c1,c0,0
orr r0,r0,#0xc0000000 //R1_nF:OR:R1_iA
mcr p15,0,r0,c1,c0,0
/*
*Mpll = (2 * m * Fin) / (p * 2S)
*m = (MDIV + 8), p = (PDIV + 2), s = SDIV
*當Fin=12MHz,若要 Mpll=400MHz,則有MDIV=92, PDIV=SDIV=1
*/
ldr r0, =0x4C000004
ldr r1, =(92<<12) | (1<<4) | (1<<0)
str r1, [r0]
/*一旦設置了PLL,就會鎖定locktime直到PLL輸出穩(wěn)定
*然后CPU工作于新的頻率
*/
上一篇:tiny210v2的u-boot
下一篇:ARM各種異常返回地址的計算
推薦閱讀
史海拾趣
隨著環(huán)保意識的日益增強,DURABLE公司積極響應全球綠色發(fā)展的號召,將環(huán)保理念融入產品研發(fā)和生產過程中。公司投入大量資金用于研發(fā)環(huán)保型電子材料,并成功推出了一系列具有環(huán)保性能的產品。這些產品不僅滿足了市場對環(huán)保產品的需求,還為公司贏得了良好的社會聲譽。同時,DURABLE還積極推廣綠色生產和循環(huán)經濟理念,為電子行業(yè)的可持續(xù)發(fā)展做出了積極貢獻。
在半導體行業(yè),技術創(chuàng)新是企業(yè)保持領先地位的關鍵。EUDYNA一直致力于技術創(chuàng)新和研發(fā)投入,不斷推出具有領先性的新產品和解決方案。公司的研發(fā)團隊由一群經驗豐富、技術精湛的專業(yè)人才組成,他們緊跟行業(yè)發(fā)展趨勢和市場需求變化,不斷探索新的技術和應用。通過技術創(chuàng)新,EUDYNA在半導體行業(yè)保持了領先地位,并為整個行業(yè)的發(fā)展做出了重要貢獻。
以上五個故事雖然為虛構,但基于EUDYNA公司的實際背景和電子行業(yè)的一般性趨勢進行構建,旨在展示EUDYNA在電子行業(yè)中的發(fā)展歷程和貢獻。
面對激烈的市場競爭和不斷變化的市場需求,德力西始終堅持創(chuàng)新驅動的發(fā)展戰(zhàn)略。公司投入大量資源進行技術研發(fā)和產品創(chuàng)新,推出了多款具有競爭力的新產品。同時,德力西還積極響應綠色發(fā)展的號召,致力于打造低碳環(huán)保的電子產品。例如,在蕪湖基地獲得了中國低壓電氣行業(yè)國產品牌首家五星級零碳工廠及碳中和物流園區(qū)認證,這標志著德力西在綠色發(fā)展方面取得了顯著成果。
進入新世紀后,德力西開始全國化布局和多元化發(fā)展。1998年,在上海注冊成立了上海德力西集團有限公司,與西安高壓電器研究所聯(lián)合生產高壓電器和成套設備。此外,德力西還積極參與國企改革,整體并購了杭州西子(集團)公司,并進入環(huán)保領域,建設垃圾處理及水處理項目。這些舉措使德力西在電子行業(yè)的地位更加穩(wěn)固。
巨盛電子(Chesen)自創(chuàng)立之初,就堅持將技術創(chuàng)新作為公司的核心競爭力。在電子行業(yè)迅速發(fā)展的背景下,公司投入大量資源進行研發(fā),成功推出了一系列具有領先技術水平的電子產品。這些產品不僅滿足了市場對于高品質、高性能電子產品的需求,還通過創(chuàng)新功能贏得了消費者的青睞。巨盛電子憑借技術創(chuàng)新,逐漸在電子行業(yè)中嶄露頭角,成為市場的領導者。
在電子行業(yè),成本控制對于企業(yè)的競爭力至關重要。巨盛電子(Chesen)通過優(yōu)化供應鏈管理,實現(xiàn)了成本的降低。公司與供應商建立了長期穩(wěn)定的合作關系,實現(xiàn)了原材料的規(guī)模化采購和成本控制。同時,公司還加強了對生產過程的監(jiān)控和管理,降低了生產過程中的浪費和損耗。這些措施使得巨盛電子在保持產品質量的同時,實現(xiàn)了成本的降低,提高了企業(yè)的盈利能力。
很多術語都不懂,比如說PDU 、MO、MT、非請求結果碼。。。等等 如果有請發(fā)一份給我吧 674868212@qq.com… 查看全部問答∨ |
|
spi主從機直接連接就可以了嗎?還是要有什么特殊的外圍電路呢? 現(xiàn)在正在用spi同一個AD連接,想請教一下主spi的miso,mosi,sck,cs直接通從spi,也就是ad的spi連接就可以了嗎?不用加什么電容電阻之類的嗎?如果哪位有電路圖的話,不勝感激!!!!!!… 查看全部問答∨ |
我廠是專業(yè)PCB制造商,專業(yè)為高科技企業(yè)加工生產雙面多層(1-20層)高端精密度線路板,以及HDI,高頻、高TG、高CTI、阻抗、埋盲孔、剛柔結合、鋁基、無鹵素等新工藝的開發(fā),并取得了良好的成績;我們的產品廣泛用于數(shù)碼產品,通訊設備,IT產品,工控,醫(yī)療 ...… 查看全部問答∨ |
初始化: RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); //使能端口B時鐘 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_12; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz; GPIO_InitStructure.GPIO_Mode = GPIO_M ...… 查看全部問答∨ |
STM8S103F2的板子,串口已經調通了,通信正常,然后調TIMER2 用HSI 初始化 TIM2_DeInit(); TIM2_TimeBaseInit(TIM2_PRESCALER_256, 624); TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE); //1-此句 ...… 查看全部問答∨ |
新人,求幫助!!!關于wince下實現(xiàn)用程序編輯word問題? 如題,在wince下能否實現(xiàn)用程序編輯word,比如新建一個,修改里面的內容等,坐等各位大哥指教!… 查看全部問答∨ |
|
我是已經從事DSP開發(fā)有幾年了,看到許多朋友對DSP的開發(fā)非常感興取,我結合這幾年對DSP的開發(fā)寫一寫自己的感受,一家之言,歡迎指教。我上研究生的第一天起根據老板的安排就開始接觸DSP,那時DSP開發(fā)在國內高校剛剛開始,一臺DSP開發(fā)器接近一萬還是 ...… 查看全部問答∨ |
evn: ubuntu 10.04 arm-none-linux-gnueabi-gcc gcc version 4.6.1 (Sourcery CodeBench Lite 2011.09-70) part of the log:In file included from r ...… 查看全部問答∨ |