91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

以s3c2440為例的arm芯片的啟動(dòng)過程

電子設(shè)計(jì) ? 來源:TOMORROW 星辰 ? 作者:TOMORROW 星辰 ? 2020-12-02 14:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

arm 嵌入式芯片的啟動(dòng)過程對(duì)于嵌入式菜鳥來說其實(shí)是很復(fù)雜的,很多人都是一知半解,存在很多誤區(qū)。在筆者看來,要想真正了解這一啟動(dòng)過程必須要首先了解存儲(chǔ)器的區(qū)別與聯(lián)系,參考文章:各種主流半導(dǎo)體存儲(chǔ)器的區(qū)別與聯(lián)系。還需要了解程序是如何編譯鏈接和執(zhí)行的。

本文將以s3c2440為例詳細(xì)講述 arm 芯片的啟動(dòng)過程。s3c2440支持兩種啟動(dòng)模式:NAND FLASH 啟動(dòng)和非 NAND FLASH 啟動(dòng)(一般是NOR FLASH 啟動(dòng),并且可以配置數(shù)據(jù)寬度),通過 OM1、OM0 兩個(gè)管腳來控制。

NAND FLASH啟動(dòng)過程

當(dāng) OM1、OM0 兩個(gè)管腳都為低電平時(shí),CPU 就被配置成了 NAND FLASH 啟動(dòng)。此時(shí) CPU 內(nèi)部的 4KB 的 SRAM 就會(huì)被映射到 nGCS0 的空間(起始地址為 0x00000000),上電時(shí) CPU 會(huì)自動(dòng)將 NAND FLASH 中前 4KB 的數(shù)據(jù)拷貝到該片內(nèi) SRAM。然后 CPU 從內(nèi)部 SRAM 的 0x00000000 地址開始執(zhí)行程序,對(duì)系統(tǒng)進(jìn)行相應(yīng)的初始化,為后續(xù) 4Kb 以外的程序執(zhí)行做準(zhǔn)備。

也就是說,CPU 啟動(dòng)過程之時(shí)能夠執(zhí)行的程序最多只能占用 4Kb 大小的空間。如果需要執(zhí)行更多程序,則需要在 4Kb 的程序里完成對(duì) DRAM 的初始化(DRAM 在使用前必須初始化),配置好??臻g,并將需要執(zhí)行的程序拷貝到 DRAM 中,然后跳轉(zhuǎn)到 DRAM 中繼續(xù)執(zhí)行。

啟動(dòng)過程之所以要將 NAND FLASH 中的代碼先拷貝到內(nèi)部 SRAM 再執(zhí)行,是因?yàn)?NAND FLASH 需要通過 NAND FLASH 控制器來進(jìn)行訪問,不能通過 CPU 的總線直接訪問,所以不能夠執(zhí)行程序。

NOR FLASH啟動(dòng)過程

當(dāng)系統(tǒng)配置為此方式啟動(dòng)時(shí),CPU 內(nèi)部 SRAM 則不再被映射到地址空間中,此時(shí)被映射到 nGCS0(起始地址為 0x00000000)地址空間的應(yīng)該是外部的 NOR FLASH(存放啟動(dòng)代碼的存儲(chǔ)器)。系統(tǒng)上電或者復(fù)位時(shí),CPU 直接從 0x00000000 地址(也就是 NOR FLASH 的起始地址)開始執(zhí)行代碼。相比 NAND FLASH 啟動(dòng),NOR FLASH 的啟動(dòng)代碼可以達(dá)到 128Mb 之大(s3c2440)。

之所以可以在 NOR FLASH 上直接執(zhí)行代碼,是因?yàn)?NOR FLASH 具有類似 RAM 的訪問接口,可以通過 CPU 總線直接進(jìn)行隨機(jī)讀取,但不支持隨機(jī)寫操作。因此,這些啟動(dòng)代碼里是不可有 C 語言的,應(yīng)為程序里必然會(huì)有變量(需要寫),需要??臻g調(diào)用函數(shù)(同樣需要寫),而匯編程序則是可以避免對(duì)內(nèi)存空間的寫操作的。

那么是不是說,如果是 NOR FLASH 啟動(dòng)就不能有 C 程序了呢?當(dāng)然不是的,不要忘了還有 DRAM 的存在。當(dāng) NOR FLASH 啟動(dòng)過程完成了對(duì) DRAM 的初始化,??臻g的配置之后就可去調(diào)用 C 語言的程序了。

這就是 arm 芯片的啟動(dòng)過程了,其實(shí)在啟動(dòng)過程中的最開始的那些啟動(dòng)代碼里還有很多地方值得細(xì)細(xì)斟酌的,也會(huì)有很多疑問,這個(gè)時(shí)候就應(yīng)該去了解程序是怎么編譯鏈接的、又是如何執(zhí)行的。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    135

    文章

    9552

    瀏覽量

    391856
  • NAND
    +關(guān)注

    關(guān)注

    16

    文章

    1755

    瀏覽量

    141040
  • 嵌入式芯片
    +關(guān)注

    關(guān)注

    4

    文章

    244

    瀏覽量

    28422
  • S3C2440
    +關(guān)注

    關(guān)注

    4

    文章

    132

    瀏覽量

    40093
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CW32系統(tǒng)發(fā)啟動(dòng)過程

    CW32支持 2 種不同的啟動(dòng)模式,通過 BOOT 引腳狀態(tài)進(jìn)行選擇,啟動(dòng)模式選擇電路只在芯片解復(fù)位時(shí)刻采樣 BOOT 引腳狀態(tài),因此在芯片解復(fù)位前用戶必須根據(jù)需要設(shè)置好BOOT 引腳
    發(fā)表于 12-15 07:54

    DCDC芯片TPS54620的緩啟動(dòng)時(shí)間仿真

    以下DCDC芯片TPS54620對(duì)緩啟動(dòng)時(shí)間進(jìn)行仿真。
    的頭像 發(fā)表于 12-02 15:20 ?562次閱讀
    DCDC<b class='flag-5'>芯片</b>TPS54620的緩<b class='flag-5'>啟動(dòng)</b>時(shí)間仿真

    CW32時(shí)鐘的啟動(dòng)過程

    CW32F030 的時(shí)鐘源啟動(dòng)過程類似,當(dāng)設(shè)置 SYSCTRL_CR1.HSEEN 1 后,HSE 時(shí)鐘振蕩電路開始工作,但此時(shí)輸出的時(shí)鐘信號(hào)振幅很小。經(jīng)過啟動(dòng)時(shí)間階段后,輸出時(shí)鐘信號(hào)的振幅
    發(fā)表于 11-13 07:49

    繞線轉(zhuǎn)子永磁電機(jī)啟動(dòng)過程準(zhǔn)時(shí)間最優(yōu)控制

    摘要:繞線轉(zhuǎn)子永磁電機(jī)(WR-PMM)轉(zhuǎn)子斬波調(diào)阻啟動(dòng)是一種便捷有效的啟動(dòng)控制策略。通過斬波調(diào)阻的方法實(shí)時(shí)調(diào)節(jié)轉(zhuǎn)子外接電阻,能使啟動(dòng)過程中平均轉(zhuǎn)矩始終保持最大值,實(shí)現(xiàn)繞線轉(zhuǎn)子永磁電機(jī)啟動(dòng)過程
    發(fā)表于 06-12 13:50

    晶閘管控制異步電機(jī)軟啟動(dòng)過程中振蕩現(xiàn)象研究

    純分享帖,需要者可點(diǎn)擊附件免費(fèi)獲取完整資料~~~*附件:晶閘管控制異步電機(jī)軟啟動(dòng)過程中振蕩現(xiàn)象研究.pdf【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請(qǐng)第一時(shí)間告知,刪除內(nèi)容!
    發(fā)表于 06-04 14:39

    如何重新啟動(dòng) FX3S 的枚舉過程?

    。 然而,我面臨的一個(gè)問題是,如果 FX3S 最初沒有連接到 USB 3.0 電纜和 PC,它就不會(huì)重新啟動(dòng)枚舉過程。 在這種情況下,有人能指導(dǎo)我如何重新啟動(dòng) FX
    發(fā)表于 05-19 07:34

    FD40-110S48B3C3 FD40-110S48B3C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD40-110S48B3C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD40-110S48B3C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)D40-110
    發(fā)表于 03-25 18:33
    FD40-110<b class='flag-5'>S48B3C3</b> FD40-110<b class='flag-5'>S48B3C3</b>

    FD50-110S48B3C3 FD50-110S48B3C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD50-110S48B3C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD50-110S48B3C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)D50-110
    發(fā)表于 03-24 18:47
    FD50-110<b class='flag-5'>S48B3C3</b> FD50-110<b class='flag-5'>S48B3C3</b>

    FD30-110S48B3C3 FD30-110S48B3C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD30-110S48B3C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD30-110S48B3C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)D30-110
    發(fā)表于 03-24 18:45
    FD30-110<b class='flag-5'>S48B3C3</b> FD30-110<b class='flag-5'>S48B3C3</b>

    FD20-110S40B3C3 FD20-110S40B3C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD20-110S40B3C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD20-110S40B3C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)D20-110
    發(fā)表于 03-20 18:58
    FD20-110<b class='flag-5'>S40B3C3</b> FD20-110<b class='flag-5'>S40B3C3</b>

    FD12-110S24A3(C)3 FD12-110S24A3(C)3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD12-110S24A3(C)3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD12-110S24A3
    發(fā)表于 03-20 18:54
    FD12-110<b class='flag-5'>S24A3</b>(<b class='flag-5'>C</b>)<b class='flag-5'>3</b> FD12-110<b class='flag-5'>S24A3</b>(<b class='flag-5'>C</b>)<b class='flag-5'>3</b>

    FD6-36S24A3C3 FD6-36S24A3C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FD6-36S24A3C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FD6-36S24A3C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)D6-36
    發(fā)表于 03-20 18:45
    FD6-36<b class='flag-5'>S24A3C3</b> FD6-36<b class='flag-5'>S24A3C3</b>

    FW2-24S15C3 FW2-24S15C3

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)FW2-24S15C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FW2-24S15C3的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)W2-24
    發(fā)表于 03-20 18:30
    FW2-24<b class='flag-5'>S15C3</b> FW2-24<b class='flag-5'>S15C3</b>

    NN3-12S24C3N NN3-12S24C3N

    電子發(fā)燒友網(wǎng)你提供AIPULNION(AIPULNION)NN3-12S24C3N相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有NN3-12S24C3N的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,NN3-
    發(fā)表于 03-19 18:49
    NN<b class='flag-5'>3-12S24C3</b>N NN<b class='flag-5'>3-12S24C3</b>N

    STM32的上電啟動(dòng)過程分享

    、PC然后是“啟動(dòng)文件”,一般主要是項(xiàng)目文件里面的startup_xxxxx.s文件。xa0 xa0 其實(shí)不光STM32系列單片機(jī)是這樣,我們接觸的NXP的微控制器、TI的MSP430以及51單片機(jī)等等
    發(fā)表于 03-07 08:09