999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于OMAP—L138處理器的啟動驅動開發

2018-08-18 08:23:26付雪飛
數字技術與應用 2018年4期

付雪飛

摘要:本文介紹NorFlash啟動雙核系統的辦法,詳細介紹啟動過程中需要的工作流程,包括程序的存放、燒寫、載入、跳轉、執行等。

關鍵詞:雙核;啟動;NorFlash

中圖分類號:TN312+8;TP368.1 文獻標識碼:A 文章編號:1007-9416(2018)04-0166-02

1 雙核啟動介紹

1.1 OMAP-L138介紹

OMAPL138雙CPU內核高性能處理器是由德州儀器公司的雙CPU處理器,內部包含DSP和ARM兩個CPU內核。本文介紹了一種基于Flash實現雙核啟動,并分別加載ARM和DSP程序的方法,介紹了OMAPL138雙CPU核的自啟動和開發方法,對于OMAPL138的應用有非常強的參考。

1.2 OMAP-L138程序映射介紹

本文介紹ARM啟動后,喚醒DSP自啟動系統,這種自啟動系統需編寫bootloader程序、應用程序段,其中ARM包含bootloader、應用程序,DSP包含應用程序。

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

1.3 OMAP-L138程序啟動流程介紹

(1)所有目標碼(*.bin)寫入外部NORFlash的程序實現。寫入外部NORFlash程序是由用戶獨立編寫,運行在ccs5.4中的一個額外的仿真程序,用于將應用程序寫入到外部NORFlash中,當然寫入地址除bootloader.bin必須在NOR Flash頂端外,其他*bin程序都可以由用戶自由定義。

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

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

(1)將ARM設置為super mode,且初始化對應的寄存器和堆棧;

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

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

(4)在ARM程序中調用跳轉到相應需執行的程序地址。

最后DPS程序被喚醒,則執行應用程序。

2 雙核程序啟動詳細介紹

2.1 bootloader介紹

Bootloader為自編寫的一段代碼,主要是用來搬運較大的文件,因為OMAP-L138芯片內部自帶的load程序只能搬運不能超過16K大小的BIN文件,如果用戶想使用大于這個文件大小的應用程序,則需要自己編寫搬運程序,也就是此處介紹的bootloader程序。

Bootloader編寫原則上是簡單,精煉,只需完成一個搬運功能即可,其他復雜功能都不必實現,像芯片初始化等可有后續應用程序去完成。

2.2 將bootloader代碼、ARM和DSP應用程序寫入Nor Flash中

首先必須編寫一個NorFlashWrite的程序,此程序應能初始化OMAP-L138芯片,并能獨立運行,并能操作外部NorFlash。

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

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

2.3 執行流程

2.3.1 Bootloader載入、執行

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

2.3.2 ARM應用程序執行

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

2.3.3 DSP應用程序執行

DSP應用程序在ARM對其喚醒時已經開始執行了,ARM需將wake up DSP的地址寫入到寄存器HOST1CFG中,此地址為DSP即將運行程序的頂端地址。

2.4 執行結束

當DSP應用程序被執行時,OMAP-L138雙核的啟動已經完成,ARM和DSP核可以分別運行,它們之間可通過配置系統寄存器CHIPSIG中的SYSCFG_CHIPINTx向DSP發送系統中斷實現雙核通信,或通過ShareRAM等方式交換數據。

3 結語

本文講解了一種基于NorFlash自啟動開發,實現OMAPL138中ARM和DSP的啟動方案,方案簡易,代碼量少,易于實際應用,并詳細分析了OMAPL138雙核CPU系統的自啟動方式和實現方案,對于OMAPL138雙核CPU系統實際運用有很強的參考價值。

參考文獻

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

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

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

[4]王鵬,簡秦勤,范俊鋒.基于TMS320C6000 DSP及DSP/BIOS系統的Flash引導自啟動設計[J].電子元器件應用,2012,12(14):35-39.

主站蜘蛛池模板: 91小视频在线播放| 免费人欧美成又黄又爽的视频| 无码aaa视频| 无码日韩精品91超碰| 国产香蕉国产精品偷在线观看 | 亚洲精品视频网| 自拍欧美亚洲| 中文字幕波多野不卡一区| 欧美福利在线观看| 色国产视频| 国产精品第一区| 国产熟睡乱子伦视频网站| 婷婷六月在线| 国产95在线 | 在线国产毛片手机小视频| 精品人妻一区无码视频| 色香蕉影院| 婷婷成人综合| 欧美日韩免费| 国产正在播放| 一区二区三区国产| 国产一级做美女做受视频| 国产导航在线| 99久视频| 四虎成人精品在永久免费| 成人福利在线看| 一区二区欧美日韩高清免费| 天天色天天综合| jizz亚洲高清在线观看| 亚瑟天堂久久一区二区影院| 美女无遮挡被啪啪到高潮免费| 亚洲国产理论片在线播放| 国产成人精品视频一区二区电影| 国产亚洲视频在线观看| 狼友视频一区二区三区| 国产成人综合在线观看| 91高清在线视频| 草草影院国产第一页| 国产青青操| 真人高潮娇喘嗯啊在线观看| 国产精品视频第一专区| 欧美无遮挡国产欧美另类| 色综合五月| 亚洲国产综合精品一区| 国产又爽又黄无遮挡免费观看| 成人一区专区在线观看| 欧美一级专区免费大片| 国产网站免费观看| 国产尤物jk自慰制服喷水| 女人天堂av免费| 亚洲AV无码乱码在线观看裸奔| 国产91在线|中文| 欧美一区日韩一区中文字幕页| 中文字幕有乳无码| 99热最新网址| 午夜三级在线| 丁香婷婷在线视频| 一区二区三区精品视频在线观看| 国产一在线观看| 国产精品私拍在线爆乳| 欧美v在线| 日本精品影院| 欧美翘臀一区二区三区| 欧美专区在线观看| 精品国产一区91在线| 亚洲欧美成人| 国产主播在线一区| 亚洲精品久综合蜜| 蜜桃臀无码内射一区二区三区| 国产精品高清国产三级囯产AV| 欧美在线网| 国产欧美日韩视频怡春院| 午夜日b视频| 精品人妻无码中字系列| 日本尹人综合香蕉在线观看 | 无码免费视频| 欧美色视频日本| 国产精品永久在线| 日日碰狠狠添天天爽| 亚洲区视频在线观看| 免费高清毛片| 亚洲人成色在线观看|