這幾天一直忙著研究移植U-boot,移植U-boot的過程中有一步很重要,就是要設置s3c2440的時鐘,什么 Fin,Fclk,Hclk,Pclk,Mpll,Upll等時鐘信號,讓初學者看得一頭霧水,各種信號混淆不清,本人特意花了一點時間,把這些東東理了理,現整理如下:
首先得弄清一個大的框架,s3c2440 cpu的默認工作主頻有兩種12MHz和16.9344MHz,也就是我們的晶振的頻率,但一般12MHz的晶振用的比較多,Fin就是指我們接的晶振頻率。大家都知道s3c2440上電正常工作后頻率是遠遠大于12MHz和16.9344MHz的,我們的s3c2440的cpu正常工作時的頻率就是405MHz,因此這就需要一個電路來提升頻率,在s3c2440的datasheet中找到了這個電路,下面這個就是PLL電路:
由圖中可以看出,Fin進去后,經過PLL電路,最終輸出兩個PLL信號頻率即MPLL和UPLL,這兩個又是什么呢?
UPLL是專用于USB設備的,MPLL是用于設置CPU和外圍設備,查找s3c2440的datasheet可知:
UPLL是USB專用,這里就不講了,下面重點講下MPLL,剛才已經說了MPLL主要用于CPU和外圍設備,但外圍設備和CPU的工作頻率并不一樣啊,CPU的工作頻率肯定比外設要高,這就必然要對MPLL進行處理,于是FCLK,HCLK,PCLK就登場了
首先講下FCLK,首先看下datasheet中的介紹:
The Clock control logic in S3C2440A can generate the required clock signals including FCLK for CPU, HCLK for the AHB bus peripherals, and PCLK for the APB bus peripherals.
相信搞嵌入式的都能看的懂,FCLK是CPU用的,HCLK是AHB總線(Advanced High performance Bus)用的,比如說SDRAM,PCLK是APB總線(Advanced Peripheral Bus)用的,比如說UART。這三個我們一個個來講解,首先看FCLK,CPU用的,看datasheet中的關于FCLK的時序圖,我們就會看出一些東東
從上面的圖中可以看到FCLK在CPU上電后,過了一段時間就發生了比較大的變化,明顯值變大了,從上面這個圖中我們可以大致看出s3c2440上電啟動過程:
1、上電幾毫秒后(power由低變高),晶振輸出穩定,此時FCLK=晶振頻率,nRESET信號恢復高電平后,CPU開始執行指令。
2、我們可以在程序開頭啟動MPLL,在設置MPLL的幾個寄存器后,需要等待一段時間(Lock Time),MPLL的輸出才穩定。在這段時間(Lock Time)內,FCLK停振,CPU停止工作。Lock Time的長短由寄存器LOCKTIME設定。
3、Lock Time之后,MPLL輸出正常,CPU工作在新的FCLK下。
現在對FCLK進行總結一下,FCLK,在CPU上電后,晶振開始正常工作,此時FCLK=晶振頻率,注意此時不存在MPLL,經過PLL電路后,得到MPLL,UPLL。此時FCLK=MPLL。
有了MPLL后,才可以談對s3c2440的時鐘設置,說通俗一點,MPLL就相當于一個工資標準,就拿我們公司做個例子吧,主管就相當于CPU,主管下面有各個項目組,每個項目組都有組長,組長下面有象我一樣的員工,呵呵。
主管的工資肯定是最高的,因為CPU工作頻率是最高的,所以主管就拿FCLK的標準,就是405MHz,僅次于主管的呢,也就是組長,s3c2440里就是內存了,也就是AHB總線用的,組長就按HCLK的標準,組長的工資肯定是根據主管的工資定的,s3c2440里確定的是HCLK=FCLK/4,普通員工就是PCLK=HCLK/2=FLCK/8,也就是APB總線使用的時鐘頻率。總的來說分頻比為FCLK:HCLK:PCLK=1:4:8.這個分配標準是由誰定的呢,公司里肯定是Boss了,也就是寄存器了,也就是我們的CLKDIVN寄存器,看下datasheet中的介紹大家就清楚了:
組長,和員工的工資都是參照主管的工資而定的,那主管的工資怎么定呢,當然也是寄存器了,看datasheet介紹:
上面這個表,就給出了方法,對于12MHz的晶振,要想經過PLL電路得到405MHz,查表得應該設置MDIV、PDIV、SDIV分別為0x7f、2、1,當然也有計算公式,計算公式我在這里就不貼出來了,datasheet里面有,上面的表就是根據那個公式算來的。那在哪里設置這3個的值呢,還是datasheet:
從上圖可以看出,我們只需要設置MPLLCON寄存器就可以確定FCLK了,再通過CLKDIVN寄存器我們就可以設置FCLK、HCLK、PCLK三者之間的比例了。
關于時鐘設置的還有一個寄存器,就是LOCKTIME,在上面的時序圖中可以看到它的身影,datasheet中介紹:
前面說過,MPLL啟動后需要等待一段時間(Lock Time),使得其輸出穩定。位[31:16]用于UPLL,位[15:0]用于MPLL。使用確省值0x00ffffff即可。
講到這里,關于s3c2440的時鐘就基本結束了,寫得好累啊,本人也是剛工作的菜鳥,由于只是有限,文中難免有錯誤,還忘浸淫嵌入式多年的大俠指正,小弟不甚感激!
上一篇:配置SSH服務器到ARM開發板中使用
下一篇:修改arm開發板IP地址
推薦閱讀
史海拾趣
隨著產品質量的不斷提升和市場份額的逐步擴大,東晶電子開始將目光投向國際市場。公司積極參與國際展會,與全球知名電子企業建立合作關系,產品出口到歐洲、北美、東南亞等多個國家和地區。同時,東晶電子還與國際知名廠商進行技術交流和合作研發,不斷提升自身技術水平,以適應全球市場的競爭需求。
隨著電子行業的快速發展,客戶對電容器的需求日益多樣化。CDE公司積極應對市場變化,致力于定制化電容器的研發與應用。公司利用數學建模和定制化的仿真App對電容器的設計進行微調,以滿足不同客戶的特定需求。這一舉措不僅提升了CDE的市場競爭力,也為公司在定制化電容器領域樹立了領先地位。
DCX-CHOL Enterprises成立于一個科技蓬勃發展的時代。公司的創始人是一群熱衷于電子技術的年輕人,他們看到市場上對于高性能、低功耗芯片的巨大需求,于是決定自主研發。經過數年的艱苦努力,他們成功開發出了一款具有革命性意義的低功耗芯片,該芯片不僅性能卓越,而且成本遠低于同類產品。這一創新成果迅速贏得了市場的認可,DCX-CHOL Enterprises因此獲得了第一桶金,為公司后續的發展奠定了堅實的基礎。
在激烈的市場競爭中,CWIND公司始終堅持以客戶為中心的服務理念。公司建立了完善的客戶服務體系,為客戶提供從產品咨詢、購買到售后服務的全方位支持。同時,公司還注重品牌建設和宣傳推廣工作。通過加大廣告投放力度、舉辦品牌活動等方式,CWIND逐漸提升了品牌知名度和美譽度。在消費者心中樹立起了良好的品牌形象和口碑效應。
銀河微電在追求經濟效益的同時,也積極履行社會責任。公司注重環保和可持續發展,在生產過程中嚴格控制污染排放,推廣綠色生產技術。此外,銀河微電還積極參與社會公益事業,捐款捐物支持災區重建、教育扶貧等項目。這些舉措不僅提升了公司的社會形象,也為公司的長遠發展積累了良好的口碑。
這五個故事只是銀河微電發展歷程中的一部分縮影,但它們充分展示了公司在技術創新、市場拓展、資本運作、戰略合作和社會責任等方面的努力和成就。正是這些因素的共同作用,使得銀河微電在電子行業中脫穎而出,成為一家備受矚目的高新技術企業。
如何估算LC電路的Q值 時間:2010-06-17 18:48:22 來源: 作者: 圖3.4中有一個與信號源相串聯的電阻,這個電阻可以作為任何門電路驅動被測信號時的輸出阻抗的模型。對于TTL或高性能的CMOS驅動器,這個源端阻抗大允為30歐。對于ECL系統,輸出阻 ...… 查看全部問答∨ |
我的SDIO接口的WIFI驅動有如下注冊表: [HKEY_LOCAL_MACHINE\\Drivers\\SDCARD\\ClientDrivers\\Custom\\MANF-02DF-CARDID-9103-FUNC-1] \"Dll\"=\"SDIO8686.dll\" &nb ...… 查看全部問答∨ |
小弟初入單片機學習,求購C51學習板。100元左右,按功能議價。各位大哥有閑置的或二手的請QQ103273243轉讓。 TEL 13423987708 深圳… 查看全部問答∨ |
|
硬件平臺:萬利開發板 STM32F103VbT6 ZIAR4.42以及keil3.22都試過了ram,flash啟動都提示NO DEVICE CONNECT,ISP也不行,哈哈,做低功耗試驗stop模式的。我不小心把外部中斷喚醒給取消了,就是無法喚醒。哈哈,現在干脆芯 ...… 查看全部問答∨ |
|
MSP430 技術資料 - MSP430常見問題(FAQ): http://www.deyisupport.com/question_answer/f/55/t/232.aspx - SimpliciTI API中文翻譯及英文原版: http://www.deyisupport.com/question_answer/f/55/t/1093.aspx - Eagle CAD的器件原理圖 ...… 查看全部問答∨ |