新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 并行實時處理系統(tǒng)中總線仲裁問題的研究及實現(xiàn)

并行實時處理系統(tǒng)中總線仲裁問題的研究及實現(xiàn)

作者: 時間:2012-12-04 來源:網(wǎng)絡 收藏
1、引言
  目前,DSP(數(shù)字信號處理器)在信號處理領域,尤其是在雷達信號和圖象信號處理方面正在被廣泛的使用,許多信號處理板都采用DSP為核心處理芯片,然而,隨著對于信號處理板的處理能力要求越來越高,例如,對于高幀數(shù)、大尺寸的圖象序列的實時處理,往往要求每秒幾十億次的運算能力,目前單片DSP的運算能力不可能滿足其要求,通常需要信號處理板在設計時采用多DSP并行處理結(jié)構(gòu),以滿足系統(tǒng)對運算量的要求。在這種多DSP并行處理結(jié)構(gòu)下,多個DSP之間通常通過共享總線來實現(xiàn)相互間或和外部設備的數(shù)據(jù)和控制/狀態(tài)字傳遞,這時,系統(tǒng)需要建立一種,來保證多個DSP在使用總線時不會發(fā)生沖突和競爭,尤其是在實時處理環(huán)境下,更有必要保證總線控制權(quán)在各個DSP之間可靠的轉(zhuǎn)移,為處理器間實時數(shù)據(jù)交換提供保證。如果數(shù)據(jù)傳輸一旦發(fā)生故障,將會導致系統(tǒng)運行遲滯或癱瘓。因此,設計的合理與否,會直接影響到系統(tǒng)運行效率和可靠性。所以在系統(tǒng)設計中,要充分考慮到總線操作問題,這是一個十分重要的環(huán)節(jié)。

2、多DSP并行處理系統(tǒng)結(jié)構(gòu)介紹
系統(tǒng)結(jié)構(gòu)如圖1所示:


  該系統(tǒng)是一種分布式多指令,多數(shù)據(jù)(MIMD)處理系統(tǒng)。其中功能模塊包括:多個DSP構(gòu)成的處理器模塊、共享存儲器模塊、輸入/輸出設備、主機。這些模塊都通過共享總線相連接。其中每個DSP中又包括運算單元、片內(nèi)存儲器、片內(nèi)輸入/輸出單元、仲裁邏輯單元以及總線接口。由于每個DSP中有容量較大的局部存儲器,所以各DSP的指令和數(shù)據(jù)基本上從各自的局部存儲器里存取,這樣就會大大減輕共享總線的負荷。
  系統(tǒng)工作的方式為主從協(xié)同方式,即系統(tǒng)啟動后,主處理器優(yōu)先權(quán)最大,由它控制總線,負責整個系統(tǒng)的初始化、數(shù)據(jù)程序配置、與主機通信等,并參與運算工作。各個從片的優(yōu)先權(quán)要比主片小,通常只參與運算工作。
如果在將DSP之間通過其他外部端口如鏈路口相互鏈接,那么將使整個系統(tǒng)體現(xiàn)出一種柔性結(jié)構(gòu),即處理系統(tǒng)結(jié)構(gòu)和工作方式可以通過軟件設置來實現(xiàn)變更而無需更改硬件設計。
例如,通過軟件設置,可以定義各個DSP間相互工作協(xié)調(diào)方式,如并行與串行的轉(zhuǎn)換;可以方便的分配各個DSP的工作量,并可以實現(xiàn)主從處理器間的調(diào)換,根據(jù)需要將從處理器升級為主處理器,負責整個系統(tǒng)的調(diào)配。在系統(tǒng)偵測到某個DSP發(fā)生故障時,可以通過軟件設置,隔離有故障的處理器,從而實現(xiàn)系統(tǒng)的帶故障運行,提高了整個系統(tǒng)的可靠性。這些操作都將涉及到對系統(tǒng)共享總線的操作,其中會遇到的問題將在下面進行描述。

3、總線操作問題的分析和解決思路

3.1總線操作問題的描述
  在上面圖1所示的系統(tǒng)中,多片DSP工作時,通常需要進行處理器間數(shù)據(jù),狀態(tài)/控制字的相互傳遞,以及和主機交換數(shù)據(jù),向共享存儲器存取數(shù)據(jù),從輸入設備輸入數(shù)據(jù),向輸出設備發(fā)送數(shù)據(jù)等操作,這些操作將不可避免地會使用到總線。尤其在實時環(huán)境下,當這些操作被要求在某個有限的時段內(nèi)必須完成。這中情況下的的總線操作就遇到了如下的問題:

(1)多個占用總線的操作同時發(fā)生時,如果調(diào)配不當,常常會發(fā)生總線沖突,如何避免總線沖突?
(2)當一個操作占用總線時間過長,其操作的總線請求得不到響應,往往導致總線死鎖情況的發(fā)生,應采用什么措施來解決總線死鎖問題?
(3)當某個緊急情況發(fā)生,需要立刻占用總線,但當前的操作還未釋放總線,如何使這個緊急的操作在最短時間內(nèi)獲得總線的控制權(quán)?
上述問題在系統(tǒng)板上運行時的具體表現(xiàn)就是程序運行的不穩(wěn)定,時常意外死機。要解決以上問題,就必須在系統(tǒng)中建立一個可靠的,合理的調(diào)度各種總線操作,使其不發(fā)生沖突,快速、正確的完成各自的工作。接下來就對多處理器系統(tǒng)中總線仲裁機制進行一下分析。

上一頁 1 2 3 下一頁

評論


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

關閉