<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 一種DSP的遠程多加載方案設計

一種DSP的遠程多加載方案設計

作者: 時(shí)間:2011-02-16 來(lái)源:網(wǎng)絡(luò ) 收藏

引言
芯片的燒寫(xiě)與自加載是一個(gè)系統能夠順利運行的基本條件。在加載技術(shù)方面已經(jīng)有大量文獻和工作成果,比較好地解決了自加載方面的許多基本問(wèn)題。而傳統的燒寫(xiě)/加載方案在調試、更新程序時(shí)需要反復外接仿真器,配置跳線(xiàn),并且只能加載運行指定地址空間上的工程。這些對處于安裝調試階段的系統影響不大,但在諸如航天設備、大型機械或其他惡劣環(huán)境中工作,難以直接進(jìn)行仿真器連接的DSP系統中,無(wú)法采用普通的燒寫(xiě)/加載方案對其進(jìn)行更新和調試。
通過(guò)分析DSP系統加載原理,提出了一種基于TI公司C6x芯片的遠程多加載DSP系統設計。該系統由通信芯片、DSP、外部動(dòng)態(tài)存儲器、外部閃存(Flash)共同組成,具備遠程燒寫(xiě)、程序選擇加載功能。系統程序更新時(shí)也具備很高的安全性,即使燒寫(xiě)過(guò)程中斷電,下次上電后仍然可以繼續燒入、運行新的工程。
1 系統結構
為了滿(mǎn)足功能設計需求,加載與燒寫(xiě)系統除了包括DSP系統運行必需的DSP芯片之外,還需要連接外部動(dòng)態(tài)存儲器(SDRAM)、可擦除存儲器(Flash)、通信芯片等。系統結構如圖1所示。其中,通信芯片負責與遠程控制端進(jìn)行數據交換,SDRAM中存放DSP工作用代碼和數據,而負責引導實(shí)際工作工程的“引導工程”和負責實(shí)際信息處理任務(wù)的“工作工程”代碼數據分別存放于不同的Flash空間。

本文引用地址:http://dyxdggzs.com/article/151030.htm

a.JPG

2 實(shí)現方案
首先簡(jiǎn)要說(shuō)明C6x系列DSP的普通二次加載工程的引導原理。自加載模式的DSP上電初始時(shí),會(huì )從CE1空間起始地址(0x90000000)開(kāi)始拷貝一定長(cháng)度(C671x系列為1 KB)的數據到內部存儲器0地址,并從0地址開(kāi)始執行程序。由于拷貝數據長(cháng)度有限,通常情況下一個(gè)長(cháng)度大于1 KB的自加載工程需要進(jìn)行二次加載操作,因此該工程必須包含一個(gè)長(cháng)度小于1 KB的Bootloader模塊,該模塊由進(jìn)行二次加載數據搬移操作的代碼構成。工程編譯完成后,Bootloader模塊被燒寫(xiě)在Flash最開(kāi)頭的1 KB地址空間內,系統上電復位后由DSP自動(dòng)搬運到0~1 KB地址空間內執行(第一次加載),并由該模塊進(jìn)行其他數據段的數據搬移(第二次加載)。在數據搬移結束后Bootloader模塊將PC指針跳轉到_c_int00地址段,并最終進(jìn)入主函數,開(kāi)始整個(gè)工程的運行。整個(gè)自加載過(guò)程如圖2所示。

b.JPG


顯然,只有存放在DSP CE1空間最前端的數據才能被自動(dòng)加載和運行。為了使系統上電時(shí)刻就具備通信、燒寫(xiě)和多引導功能,需要將具備上述功能的引導工程存放在CE1基地址開(kāi)始的空間。
DSP多引導技術(shù)正是在普通DSP系統的加載技術(shù)基礎上發(fā)展而來(lái)的,將具備引導、通信、燒寫(xiě)、存儲器檢糾錯功能的工程作為引導工程獨立存儲在DSP CE1空間,由DSP自動(dòng)加載運行;而將具備不同功能的應用程序代碼分別存儲在其他存儲器,等待引導工程根據功能需要去加載。
引導工程由DSP自動(dòng)運行,隨后根據遠程指令或按預定程序流程的執行通信、更新工作工程代碼,或搬運并運行存儲在其他空間工作工程內的Bootloader段,從而引導不同功能的工作工程運行。借助這種工程分離運行技術(shù),可以通過(guò)遠程端或自動(dòng)對空間電子設備存儲器中的代碼進(jìn)行更新、檢糾錯和加載操作,甚至進(jìn)行多個(gè)工作工程的切換以滿(mǎn)足不同應用背景下的功能需求;即使在更新或切換過(guò)程中出現故障,系統復位后仍可回到正常工作的引導工程中進(jìn)行系統維護或重新更新,具備防燒寫(xiě)功能。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: DSP

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>