2010年1月30日 星期六

多核心8051與代理人伺服器

摘要

多核心處理器是目前最重要的研究議題之一,在未來要提高計算能力而同時不讓功率與散熱成為阻礙時,多核心處理器是解決方法之一,不過多核心處理器的開發不僅僅是硬體的問題,同時在系統設計以及軟體開發方面也具備多重困難。與其一開始就切入使用過於複雜的處理單元,本系統採用簡單的8051為基礎,經過適度的修改後,將多顆修改過的8051以晶片網路(Network on Chip-NoC)的方式連結起來,並且採用服務導向架構(Service Oriented Architecture-SOA)以及元件式軟體架構(Component Based Software Architecture-CBSA)的方式讓多顆8051可以共同運作並且為同一套應用軟體進行運算,我們使用代理人伺服器(Agent)負責將軟體元件的二元碼(Binary)透過元件快遞協定(Component Dispatch Protocol)傳送至多顆8051進行運算,而軟體元件之間所需要的資料交換則是利用我們所定義的元件資料交換協定(Component Data Exchange Protocol)透過晶片內網路進行傳輸,而運算的結果透過代理人/元件通訊協定(Agent Component Communication Protocol),最重要的是,我們提供了包含以SystemC為基礎的電子系統層(Electronic System Level-ESL)的模擬器(Simulator)並執行在我們自行開發的開放原始碼的OpenESL發展平台之上,同時我們也提供了FPGA的實體模擬器(FPGA Emulator),而代理人伺服器暫時是使用一部PC來取代。整體的成果呈現出一個簡單的多核心系統所應具備的基本功能,相信這是一個具體而微的展示,讓人可以看見(Visualize)未來真正功能強大的多核心系統,我們計畫在不久的未來採用更先進的處理器以及作業系統,讓多核心系統真正具備實用價值。