要:本文針對嵌入式設備資源的有限性以及嵌入式測控系統實時性的要求,提出了一個基于多處理器的測控系統架構的設想,以便于在有限的資源下更快的對現場采集的數據進行處理。
關鍵詞:嵌入式系統;測控;多處理器
多處理器系統就是在一個系統中含有多個CPU,每個CPU獨立地處理一個或少量的事務,在操作系統的控制下,控制數據合理流動,以完成設計要求的系統。使用多處理器主要有兩種目的。一種是想利用多臺處理器進行多任務處理。另一種是想依靠冗余的處理器及重組能力來提高系統的可靠性、適應性和可用性。
二、多處理器系統中應注意的問題
與單處理器系統相比,多處理器結構的實現必須考慮和解決一些特殊問題。
(一)處理器之間的負載問題
在單處理器結構中不存在負載不均勻的問題。但在多處理器結構中,如何把工作更均衡的分配給各個處理器,使多處理器之間的負載更均衡是重要的問題。在對稱多處理器結構中,需要盡量把工作平均分配給各個處理器,而對于非對稱處理器結構,每個處理器有自己特定的工作,工作的時候是各負其責,所以很多情況下不能夠平均分配負載。如何解決系統中不同的分配負載的問題需要操作系統的調度算法來實現。
(二)處理器間通信的問題
?
?
在單處理器結構中不存在處理器之間的通信,只有進程之間的通信。各個進程看上去是并行的,但實際上卻是串行的,因為在任一個時刻只有一個進程在真正運行。在這樣的系統中,保證進程間的同步和互斥是比較容易的。對臨界資源的操作中途不發生進程調度,而且不產生與所使用的臨界資源有關的中斷,就可以保證操作的互斥性。在多處理器結構中,各個處理器并不是相互孤立的,而是協同工作的。那么處理器間就需要進行通信。現有系統中常用的方法有:利用雙口RAM實現CPU之間的通信、利用共享內存的方法實現CPU之間的通信、利用總線的方法實現CPU之間的通信等。
(三)高速緩存與內存之間內容的一致性問題
從數據傳輸方面提高系統的實時性涉及的面比較廣,例如,改進傳統的TCP擁塞控制、裁減傳統協議棧、改進數據調度算法等等。人們研究的熱點也是圍繞以上這幾個方面來做的,并且也取得了大量的成果,大大提高了系統的實時通訊能力。
[1]馬忠梅,馬廣云等ARM嵌入式處理器結構與應用編程[M]北京:北京航空航天工業大學出版社,2002
[2]周立功等ARM與嵌入式系統基礎編程[M]廣州:周立功單片機發展有限公司,2004
[3]徐高潮,胡亮,鞠九濱分布式計算機系統[M]北京:高等教育出版社,2004
|