• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于OMAP—L138處理器的啟動(dòng)驅(qū)動(dòng)開發(fā)

    2018-08-18 08:23:26付雪飛
    關(guān)鍵詞:雙核啟動(dòng)

    付雪飛

    摘要:本文介紹NorFlash啟動(dòng)雙核系統(tǒng)的辦法,詳細(xì)介紹啟動(dòng)過(guò)程中需要的工作流程,包括程序的存放、燒寫、載入、跳轉(zhuǎn)、執(zhí)行等。

    關(guān)鍵詞:雙核;啟動(dòng);NorFlash

    中圖分類號(hào):TN312+8;TP368.1 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2018)04-0166-02

    1 雙核啟動(dòng)介紹

    1.1 OMAP-L138介紹

    OMAPL138雙CPU內(nèi)核高性能處理器是由德州儀器公司的雙CPU處理器,內(nèi)部包含DSP和ARM兩個(gè)CPU內(nèi)核。本文介紹了一種基于Flash實(shí)現(xiàn)雙核啟動(dòng),并分別加載ARM和DSP程序的方法,介紹了OMAPL138雙CPU核的自啟動(dòng)和開發(fā)方法,對(duì)于OMAPL138的應(yīng)用有非常強(qiáng)的參考。

    1.2 OMAP-L138程序映射介紹

    本文介紹ARM啟動(dòng)后,喚醒DSP自啟動(dòng)系統(tǒng),這種自啟動(dòng)系統(tǒng)需編寫bootloader程序、應(yīng)用程序段,其中ARM包含bootloader、應(yīng)用程序,DSP包含應(yīng)用程序。

    所有程序的代碼放置在外部NOR Flash內(nèi),外部Flash與雙核CPU通過(guò)EMIF總線連接。程序放置位置的中的地址映射如圖1所示,其中,bootloader.bin通過(guò)雙核CPU出廠自帶的搬運(yùn)程序到共享shareRAM中,shareRAM起始地址為0x80000000,出廠自帶的搬運(yùn)程序不能搬運(yùn)超過(guò)16 KB的二進(jìn)制文件;ARM應(yīng)用程序arm.bin放在DDR2,起始地址為0xC0000000和DSP應(yīng)用程序代碼段放在L2,起始地址為0x11800000,最后,ARM中斷向量表存放在ARM_LOCAL_RAM地址空間,位于0xFFFF0000處。

    1.3 OMAP-L138程序啟動(dòng)流程介紹

    (1)所有目標(biāo)碼(*.bin)寫入外部NORFlash的程序?qū)崿F(xiàn)。寫入外部NORFlash程序是由用戶獨(dú)立編寫,運(yùn)行在ccs5.4中的一個(gè)額外的仿真程序,用于將應(yīng)用程序?qū)懭氲酵獠縉ORFlash中,當(dāng)然寫入地址除bootloader.bin必須在NOR Flash頂端外,其他*bin程序都可以由用戶自由定義。

    (2)bootloader只完成一項(xiàng)工作,就是將ARM程序、DSP程序、中斷向量表搬移到分別對(duì)應(yīng)的空間中去。

    之后ARM程序按順序完成的以下事件:

    (1)將ARM設(shè)置為super mode,且初始化對(duì)應(yīng)的寄存器和堆棧;

    (2)雙核CPU內(nèi)部寄存器的初始化;

    (3)由ARM通過(guò)控制字Wake Up DSP;

    (4)在ARM程序中調(diào)用跳轉(zhuǎn)到相應(yīng)需執(zhí)行的程序地址。

    最后DPS程序被喚醒,則執(zhí)行應(yīng)用程序。

    2 雙核程序啟動(dòng)詳細(xì)介紹

    2.1 bootloader介紹

    Bootloader為自編寫的一段代碼,主要是用來(lái)搬運(yùn)較大的文件,因?yàn)镺MAP-L138芯片內(nèi)部自帶的load程序只能搬運(yùn)不能超過(guò)16K大小的BIN文件,如果用戶想使用大于這個(gè)文件大小的應(yīng)用程序,則需要自己編寫搬運(yùn)程序,也就是此處介紹的bootloader程序。

    Bootloader編寫原則上是簡(jiǎn)單,精煉,只需完成一個(gè)搬運(yùn)功能即可,其他復(fù)雜功能都不必實(shí)現(xiàn),像芯片初始化等可有后續(xù)應(yīng)用程序去完成。

    2.2 將bootloader代碼、ARM和DSP應(yīng)用程序?qū)懭隢or Flash中

    首先必須編寫一個(gè)NorFlashWrite的程序,此程序應(yīng)能初始化OMAP-L138芯片,并能獨(dú)立運(yùn)行,并能操作外部NorFlash。

    將bootloader代碼、ARM和DSP對(duì)應(yīng)的*.bin二進(jìn)制文件讀取到電腦內(nèi)存空間且檢驗(yàn)文件正確,使用NorFlashWrite(用戶自己編寫的寫入NOR Flash的小程序,根據(jù)用戶硬件連接不同,寫入地址和方式也相應(yīng)會(huì)改變)將*.bin寫入到NOR Flash對(duì)應(yīng)地址內(nèi)。

    Bootloader.bin根據(jù)手冊(cè)要求需放置在NorFlash頂端位置處,具體的寫入由NorFlashWrite程序完成。

    2.3 執(zhí)行流程

    2.3.1 Bootloader載入、執(zhí)行

    首先,OMAP-L138芯片被上電,芯片自動(dòng)執(zhí)行內(nèi)部的loader程序,根據(jù)芯片外部跳線,芯片會(huì)自動(dòng)選擇外部程序載入方式,本文為NorFlash方式。芯片出廠自帶的自啟動(dòng)程序會(huì)搬運(yùn)NOR Flash頂端地址(0x60000000)的16KB大小的二進(jìn)制代碼到雙核CPU的共享內(nèi)存的頂端地址處(0x80000000),雙核CPU搬運(yùn)完成后,雙核系統(tǒng)強(qiáng)制將程序運(yùn)行PC指針指向0x80000004處運(yùn)行此處地址的指令。

    2.3.2 ARM應(yīng)用程序執(zhí)行

    首先,ARM的初始化函數(shù)會(huì)更改寄存器CPSR的模式、中斷控制位,使ARM核處于super mode下,如果ARM不處于super mode下,很多ARM硬件資源都不能使用,而且不處于super mode下很多寄存器也不能訪問(wèn);之后,關(guān)閉所有中斷允許寄存器,將super mode的堆棧初始化;在super mode堆棧的所有初始化結(jié)束后,雙核內(nèi)部的寄存器也需初始化,最后通過(guò)wake up命令來(lái)喚醒DSP即可,至此ARM基本工作已經(jīng)完成。

    2.3.3 DSP應(yīng)用程序執(zhí)行

    DSP應(yīng)用程序在ARM對(duì)其喚醒時(shí)已經(jīng)開始執(zhí)行了,ARM需將wake up DSP的地址寫入到寄存器HOST1CFG中,此地址為DSP即將運(yùn)行程序的頂端地址。

    2.4 執(zhí)行結(jié)束

    當(dāng)DSP應(yīng)用程序被執(zhí)行時(shí),OMAP-L138雙核的啟動(dòng)已經(jīng)完成,ARM和DSP核可以分別運(yùn)行,它們之間可通過(guò)配置系統(tǒng)寄存器CHIPSIG中的SYSCFG_CHIPINTx向DSP發(fā)送系統(tǒng)中斷實(shí)現(xiàn)雙核通信,或通過(guò)ShareRAM等方式交換數(shù)據(jù)。

    3 結(jié)語(yǔ)

    本文講解了一種基于NorFlash自啟動(dòng)開發(fā),實(shí)現(xiàn)OMAPL138中ARM和DSP的啟動(dòng)方案,方案簡(jiǎn)易,代碼量少,易于實(shí)際應(yīng)用,并詳細(xì)分析了OMAPL138雙核CPU系統(tǒng)的自啟動(dòng)方式和實(shí)現(xiàn)方案,對(duì)于OMAPL138雙核CPU系統(tǒng)實(shí)際運(yùn)用有很強(qiáng)的參考價(jià)值。

    參考文獻(xiàn)

    [1]劉遠(yuǎn)峰,陳志華.一種新的基于TMS320C6000 DSP的Flash引導(dǎo)自啟動(dòng)方法[J].電視技術(shù),2011,21(35):54-57.

    [2]王潔,蘇東林,姜鐵華.基于TMS320C6000系列DSP的二次Bootl oader研究[J].電子工程師,2005,8(31):53-55.

    [3]劉濤,倪江生,王丹丹.基于DSP的Flash自啟動(dòng)設(shè)計(jì)[J].儀表技術(shù),2009,(9):44-45.

    [4]王鵬,簡(jiǎn)秦勤,范俊鋒.基于TMS320C6000 DSP及DSP/BIOS系統(tǒng)的Flash引導(dǎo)自啟動(dòng)設(shè)計(jì)[J].電子元器件應(yīng)用,2012,12(14):35-39.

    猜你喜歡
    雙核啟動(dòng)
    我省2023年高考報(bào)名工作啟動(dòng)
    邊角雙核互相轉(zhuǎn),環(huán)環(huán)相扣不變心——解三角形經(jīng)典題突破
    全球金融“F20”在此召開!橫瀝進(jìn)入“雙核”時(shí)代
    《悅讀·家》暨“悅讀·家@萬(wàn)家”活動(dòng)啟動(dòng)
    海峽姐妹(2019年6期)2019-06-26 00:52:28
    霧霾來(lái)襲 限產(chǎn)再次啟動(dòng)
    安發(fā)生物啟動(dòng)2017
    新型夾心雙核配和物[Zn2(ABTC)(phen)2(H2O)6·2H2O]的合成及其熒光性能
    西部最大規(guī)模云計(jì)算中心啟動(dòng)
    俄媒:上合組織或9月啟動(dòng)擴(kuò)員
    三螺旋N-N橋連的雙核Co(Ⅲ)配合物的合成、結(jié)構(gòu)和性質(zhì)
    宜春市| 中西区| 怀远县| 东港市| 东山县| 长春市| 仙游县| 辽阳市| 牙克石市| 丹阳市| 阳新县| 平舆县| 马公市| 凤阳县| 滦平县| 额尔古纳市| 永丰县| 黄骅市| 大竹县| 房山区| 库尔勒市| 黔南| 长兴县| 凤庆县| 宿松县| 无锡市| 海宁市| 玉环县| 平原县| 浑源县| 东阿县| 当阳市| 闸北区| 涿州市| 钟山县| 东至县| 武定县| 鲁山县| 泰安市| 汉中市| 桦南县|