新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種具備遠(yuǎn)程多加載的DSP系統(tǒng)方案設(shè)計(jì)

一種具備遠(yuǎn)程多加載的DSP系統(tǒng)方案設(shè)計(jì)

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

  引導(dǎo)工程的功能可以以中斷或查詢的方式進(jìn)行。如果以中斷方式進(jìn)行,需要妥善處理中斷向量表和使能對應(yīng)中斷。在引導(dǎo)工程退出時(shí),必須關(guān)閉所使用的端口和中斷資源。

  2.1.3 在線燒寫功能

  早期系統(tǒng)為了使用非易失性存儲芯片保存數(shù)據(jù),必須使用專用燒錄設(shè)備進(jìn)行。隨著存儲技術(shù)與技術(shù)的進(jìn)步,部分芯片已經(jīng)具備對直連Flash芯片進(jìn)行擦除和寫入的能力。

  由于引導(dǎo)工程與工作工程共享一片F(xiàn)lash存儲介質(zhì),在擦除工作工程的存儲空間時(shí),需要采用扇區(qū)擦除而不是整片擦除,以確保引導(dǎo)工程不會(huì)被改寫。也可以通過對其所在扇區(qū)寫保護(hù)的方法來實(shí)現(xiàn)對引導(dǎo)工程的保護(hù)。寫保護(hù)操作可以確保無論對工作工程的燒寫是否成功,引導(dǎo)工程在第一次成功燒錄后將會(huì)一直駐留在Flash芯片中,每次上電時(shí)都可以進(jìn)行、燒寫和引導(dǎo)工作。

  在某些對設(shè)備可靠性要求嚴(yán)格的場合,也可將引導(dǎo)工程單獨(dú)存放在一片PROM中,在一次燒寫固化完成后,引導(dǎo)工程所在空間將不可再修改。這樣可以完全避免使用Flash芯片反復(fù)擦寫引起的存儲器性能下降,以及在燒寫工作工程時(shí)誤擦除引導(dǎo)工程的問題。

  燒寫流程與擦除流程類似,可以參照參考文獻(xiàn)中的說明設(shè)計(jì)。

  2.1.4 加載引導(dǎo)功能

  當(dāng)完成了對工作工程文件的燒寫之后,需要根據(jù)遠(yuǎn)程端指令引導(dǎo)工作工程開始工作。根據(jù)自加載的原理,引導(dǎo)工程必須首先將所有已使用的DSP資源關(guān)閉,并將Flash存儲器其他空間內(nèi)工作工程的Bootloader程序拷貝到DSP內(nèi)部存儲器0地址起始的空間內(nèi)(這一過程模擬了圖2所示DSP自動(dòng)加載時(shí)的數(shù)據(jù)搬移),然后將程序指針跳轉(zhuǎn)到工作工程的Bootloader起始地址,開始運(yùn)行。由工作工程的Bootloader程序?qū)⒄麄€(gè)工作工程剩余數(shù)據(jù)段依次加載到DSP的動(dòng)態(tài)存儲器中,最后跳轉(zhuǎn)到工作工程的起始地址,開始執(zhí)行工作工程的主程序段。

  由引導(dǎo)工程進(jìn)行引導(dǎo)的好處在于:DSP只能自動(dòng)加載CE1空間起始段的數(shù)據(jù),而用戶設(shè)計(jì)的引導(dǎo)工程可以加載任意可讀存儲空間內(nèi)的數(shù)據(jù);DSP只能在上電時(shí)刻加載程序,而引導(dǎo)工程可以在任意時(shí)刻轉(zhuǎn)換加載不同的應(yīng)用工程程序。

  2.2 工作工程設(shè)計(jì)

  工作工程是用來完成DSP系統(tǒng)真正信息處理需求的工程,它的設(shè)計(jì)與普通的二次加載DSP工程基本原理一致,但需要針對雙二次加載功能做幾個(gè)方面調(diào)整:

 ?、俅鎯ζ髟O(shè)置。由于可以復(fù)用引導(dǎo)工程所使用的所有外部設(shè)備和RAM,在工作工程中配置存儲器空間時(shí)只需要保留引導(dǎo)工程使用的Flash地址空間,其他所有引導(dǎo)工程使用的存儲器在正常工作前都可以重置。

 ?、贗STP(Interrupt Service Table Pointer,中斷服務(wù)指針寄存器)設(shè)置。每一個(gè)工程都有獨(dú)立的中斷向量表,因而進(jìn)行工程切換時(shí)需要重置中斷向量服務(wù)指針,以確保新的工程能正確地響應(yīng)中斷。

 ?、燮渌Y源設(shè)置。為了簡化操作、節(jié)省資源,引導(dǎo)工程中應(yīng)盡可能少占用DSP資源。除上述存儲器和中斷資源外,引導(dǎo)功能可能會(huì)用到定時(shí)器、MCBSP、EDMA等其他資源。在引導(dǎo)工作工程之前,需要全部關(guān)閉這些設(shè)備;同時(shí),進(jìn)入工作工程后需要重新初始化這些外設(shè)資源,避免發(fā)生設(shè)備使用沖突。

  結(jié)語

  通過分析、利用DSP加載運(yùn)行機(jī)制,本文設(shè)計(jì)了一種具備遠(yuǎn)程更新能力的多加載DSP系統(tǒng)。利用通信接口遠(yuǎn)程更新程序代碼,并將不同功能的DSP工程燒錄在同一Flash芯片中,并可以通過外部通信指令選擇不同功能的程序運(yùn)行,使得DSP系統(tǒng)能靈活、安全地更新和運(yùn)行。

  遠(yuǎn)程多引導(dǎo)DSP方案在不改變系統(tǒng)整體框架的前提下,以較少的系統(tǒng)資源占用完成了遠(yuǎn)程在線DSP代碼燒錄和引導(dǎo)操作的功能設(shè)計(jì),同時(shí)由于采用了引導(dǎo)工程、工作工程分離的做法,具備較強(qiáng)的魯棒性。該系統(tǒng)具有燒寫免拆卸、防燒死等優(yōu)良特性,在航天、機(jī)械、系統(tǒng)設(shè)計(jì)中可以廣泛使用。


上一頁 1 2 3 下一頁

關(guān)鍵詞: DSP 控制 通信

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉