合理選擇嵌入式系統的多處理器
2004年5月A版
在許多嵌入式系統設計中,成本要求壓倒一切。為了降低成本,設計者往往在整個系統中只用一個微處理器,因為元件越少成本越低。但是,將作業分配給多個處理器會簡化設計和縮短面市時間,可對附加的成本獲得超量的補償。當然應該根據設計特性來尋求解決方案,要記住增加一個輔助處理器對系統成本的影響是有正有負,必須進行全面考核。
在好處方面,輔助處理器可降低對主處理器性能的要求,可選用較便宜的產品。輔助處理器還可簡化接線,主處理器通過串行總線與智能輔助處理器連接,而無需用并行總線作直接控制,簡化接線顯然比較節省和減少噪聲問題。
然而,潛在的最大好處是使用輔助處理器可簡化設計的開發和除錯,例如,將功能分配到不同的器件可簡化軟件結構,使整合和除錯比較容易,并且可進行并行開發和加快設計過程。甚至可促進輔助處理器功能硬件的軟件再用,加快后端的設計。結果,這些好處可使產品更快地推向市場。
當然,需要作出權衡。考慮的問題之一是會增加處理器的成本,但是問題不大,許多處理器的批量單價只有1美元。更大的潛在困難是在主、輔處理器不能共用同樣開發工具的情況下,輔助處理器開發工具的成本。顯然,明智的設計隊伍可選擇適于多種多處理器設計用的輔助處理器,結果是工具成本分攤到多個設計中,減輕了總成本的增加。還有可大批量購買元件,以便獲得更高的折扣。
多處理器和總線
對多處理設計帶來的軟件變化應該作出全面權衡。單一功能的設計不可能從多處理器獲得好處,然而,許多設計需要多種功能,并行執行作業,此時多處理器可發揮更大作用。最好的情況是,多個作業相對獨立,涉及多個I/O通道,許多功能即可從主處理器遷移到輔助處理器。
選擇合適的總線,對成本同樣具有重要意義,對比的性能包括連接線數目、速率、協議、地址,微控制器通用的主要通信總線性能如表1所示。
這里著重介紹MDB(多節點總線),它只有兩根連線,速率較低,主/從結構,地址32個,半雙工運行,兩根連線分別傳送時鐘和數據。由于MDB在四種總線中物理結構最簡單,容易實現,被選作為自動售貨機構件標準。MDB的通信開銷比較慢,發送命令和獲得響應大約要用40ms,如表2所示。
舉例:自動售貨機
無人值守的自動售貨機(VM)需要每天24小時連續工作;客戶放入硬幣或紙幣,售貨機自動送出產品,它由幾種構件組成:自動售貨機控制器,作為嵌入式主處理器;硬幣讀出器;紙幣讀出器;卡讀出器;鍵盤輸入;顯示輸出;馬達和傳感器控制;維護端口;互聯網通信。
因為自動售貨機功能比較復雜和I/O較多,嵌入系統必須招待并行、異步作業。如果采用單處理器的嵌入式系統,則需要與許多復雜的構件作并行連接,如圖1所示。如果采用多處理器的嵌入式系統,將處理功能分配到構件中(如馬達控制、硬幣讀出、讀卡器等),則可使主處理器和I/O連接明顯簡化,功能增強,響應加快,如圖2所示。■
評論