采用 Linux 與 DSP/BIOS RTOS 實施雙 OS 信號處理技術(shù)
由于上述特性對時間要求不高,因此無需精確控制 DSP/BIOS。這時,Linux驅(qū)動程序模型所提供的資源提取功能就可更好地提高靈活性,縮短開發(fā)時間,更不用說可獲得 Linux 社區(qū)豐富的開源應(yīng)用代碼支持了。
可使 Linux 與 DSP BIOS 操作系統(tǒng)同時運行在同一設(shè)備上的解決方案,就是需要使用虛擬程序 (virtualizer) 為系統(tǒng)開發(fā)或集成人員提供這兩種操作系統(tǒng)的優(yōu)勢(見圖 2)。
圖 2. Linux 和 DSP/BIOS 同時運行在 DM643x DSP 器件上
虛擬程序作為快速、可預(yù)測的交換機(jī)可在 Linux 與 DSP/BIOS 操作系統(tǒng)之間實現(xiàn) DSP 資源。當(dāng)接收到中斷時對 DSP/BIOS 操作系統(tǒng)環(huán)境做出推測性交換,從而確保 DSP/BIOS 線程的最佳性能。
如果新到達(dá)的中斷對應(yīng)于 DSP/BIOS 環(huán)境中已識別的事件,那么將在已經(jīng)加載且準(zhǔn)備運行的 DSP/BIOS 環(huán)境中對其進(jìn)行處理。
在虛擬程序支持 DSP/BIOS 的同時,應(yīng)用可直接訪問所需的系統(tǒng)資源,且不會影響(掛起)Linux 環(huán)境中保持的用戶與內(nèi)核空間。
一旦應(yīng)用完成 DSP/BIOS 環(huán)境下的高性能信號處理計算,虛擬機(jī)就將強(qiáng)制轉(zhuǎn)回到 Linux環(huán)境,以便訪問該環(huán)境下的更高級特性。
在虛擬程序的調(diào)節(jié)下,操作系統(tǒng)之間的交換時間不到 10 微秒,這使編程人員能達(dá)到實時性能要求,相對于只包含 DSP/BIOS 的原生系統(tǒng)而言,性能上也沒什么損失。該解決方案對典型多媒體設(shè)備的處理資源占用僅約 1.5%。
雙操作系統(tǒng)的更多優(yōu)勢
或許為了支持 DSP/BIOS 操作系統(tǒng)對基于 Linux 的產(chǎn)品進(jìn)行擴(kuò)展的最明顯優(yōu)勢之一:無需移植就可使用成百上千種第三方的相關(guān)算法。由于符合 xDAIS 標(biāo)準(zhǔn),因此可確保第三方算法無縫集成于 DSP/BIOS 環(huán)境中。
為了支持 DSP/BIOS 操作系統(tǒng)對基于 Linux 的系統(tǒng)進(jìn)行擴(kuò)展的另一個優(yōu)勢:在 DSP/BIOS 環(huán)境下執(zhí)行應(yīng)用不受 Linux 內(nèi)核 GNU 通用公共許可證 (GPL) 的限制。
在實施基于 Linux 的解決方案時,我們有時不是很清楚開發(fā)商推出的獨特軟件知識產(chǎn)權(quán)在許可證方面到底有哪些具體要求。通過在 DSP/BIOS 而非 Linux 操作環(huán)境下執(zhí)行 IP,可以避免這方面的法律問題。
結(jié)論
使用本文介紹的技術(shù),Linux 與 DSP BIOS 可同時運行在統(tǒng)一的 DSP 內(nèi)核上,這既能夠提供 Linux 解決方案的全部功能,又可確保 DSP/BIOS 環(huán)境下的高精度與硬件控制。
編程人員可充分利用適用于 Linux 的應(yīng)用代碼與適用于 DSP/BIOS的信號處理代碼,無需針對不同環(huán)境進(jìn)行移植。
對要在實時嵌入式應(yīng)用中采用 Linux 特性的設(shè)計人員而言,通過虛擬程序升級、同時獲得 DSP BIOS 工具套件,將大幅提高信號處理性能,并可顯著節(jié)省系統(tǒng)資源的成本。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論