關(guān)于S3C2440開發(fā)板Nand flash程序燒寫和運行的一些理解-基礎(chǔ)電子_第1頁
關(guān)于S3C2440開發(fā)板Nand flash程序燒寫和運行的一些理解-基礎(chǔ)電子_第2頁
關(guān)于S3C2440開發(fā)板Nand flash程序燒寫和運行的一些理解-基礎(chǔ)電子_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔-下載后可編輯關(guān)于S3C2440開發(fā)板Nandflash程序燒寫和運行的一些理解-基礎(chǔ)電子這兩天剛開始學(xué)習(xí)ARM9的裸機編程和Linux系統(tǒng)移植,在燒寫Nandflash內(nèi)存的時候?qū)σ恍┲付ǖ牡刂樊a(chǎn)生了疑惑。

我看過很多教學(xué)視頻,他們在燒寫程序到Nandflash的時候一般會指定一個地址0X3000_0000,而S3C2440的手冊上指明了0X3000_0000地址對應(yīng)的片內(nèi)外設(shè)是SDRAM。這不禁讓我產(chǎn)生了疑問。明明是指定了SDRAM卻燒寫到了Nandflash,為什么?

為了解決我的疑惑,在網(wǎng)上看了很多人的解釋,這不僅解開了我的疑惑,還引出了許多相關(guān)知識點。

要解答這個問題,首先要從Nandflash本身的結(jié)構(gòu)說起。Nandflash的結(jié)構(gòu)和RAM不一樣,它的數(shù)據(jù)線是復(fù)用的,內(nèi)與足夠的地址線用來尋址,對于它的數(shù)據(jù)存取通常是以塊為單位。這一點跟Norflash不一樣,Norflash帶有RAM接口,有足夠的地址線進行尋址,所以CPU可以訪問Norflash內(nèi)部的每一個字節(jié),程序可以在norflash中運行,而Nandflash不行,所以Nandflash中的程序想要運行必須拷貝到內(nèi)存(一般是SDRAM)當(dāng)中來。

當(dāng)我們想燒寫程序至Nandflash中時,會借助一個“中轉(zhuǎn)站”,既SDRAM。程序先燒寫到SDRAM中(這就是指定0X3000_0000地址的原因),然后在從SDRAM中拷貝到Nandflash中去,而這個拷貝工作由實現(xiàn)燒寫到Norflash中的uboot程序引導(dǎo)完成。

此外,當(dāng)我們向2440開發(fā)板移植Linux系統(tǒng)的時候,要向Nandflash燒寫三個文件,分別是:uboot、Linuxkernel和文件系統(tǒng)。每一步的燒寫也跟前面一樣借用SDRAM作為燒寫的“中轉(zhuǎn)站”。但是,我們在燒寫的時候并沒有對每一步的燒寫地址做特定的處理,那怎么能夠保證寫著三個文件的時候后面的不會覆蓋前面的呢?我的理解是:還是Norflash中的uboot程序的功勞,它會引導(dǎo)著三個文件分別拷貝到Nandflash的不同位置中。

那么,說完了Nandflash燒錄的問題,自然而然就應(yīng)該說一下Nandflash中程序運行的問題。前面我們說到,Nandflash中不可以執(zhí)行程序,而在我們選擇從Nandflash啟動的時候,S3C2440會自動將Nandflash的前4KB的代碼拷貝到內(nèi)存當(dāng)中一個SteppingStone(一般稱為墊腳石)的片內(nèi)內(nèi)存當(dāng)中(這一步操作由芯片內(nèi)部的硬件決定,不用我們操心),PC跳轉(zhuǎn)到0地址去執(zhí)行這些代碼。但是,這個片內(nèi)內(nèi)存只有4KB,當(dāng)我們在Nandflash中的程序大于4KB的時候怎么辦呢?這時候,就是這拷貝過去的4KB代碼發(fā)揮作用的時候了。這4KB的代碼會幫我們初始化SDRAM,然后將Nandflash中剩下的代碼一并拷貝到SDRAM中,PC跳轉(zhuǎn)到SDRAM中去執(zhí)行剩下的程序(所以我們的裸機程序一般不會超過4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論