新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 基于SystemC的異構(gòu)多核通信模塊設(shè)計

基于SystemC的異構(gòu)多核通信模塊設(shè)計

作者: 時間:2011-01-10 來源:網(wǎng)絡(luò) 收藏

*/ void Controller();

  //對于每一個write_shm_data 請求,將數(shù)據(jù)寫入指定的共享存儲區(qū)空間

  void WriteShmDataHandler(struct InstBuffer *inst);

  //對于每一個read_shm_data 請求,將數(shù)據(jù)寫入指定的共享存儲區(qū)空間

  void ReadShmDataHandler(struct InstBuffer *inst);

  ……

  SC_HAS_PROCESS(CMCCtrl);

  // constructor

  CMCCtrl (sc_module_name _name){……}

  };

  4 MP3 解碼程序的多核測試

  為了更加充分進行驗證,并展示多核通信模塊在實際應(yīng)用中的價值,本文選擇了MP3 解碼程序進行基于多核系統(tǒng)的移植,并驗證仿真結(jié)果以及仿真效率。

  MP3編碼的主要方法是在頻域上對音頻文件內(nèi)容進行編碼壓縮,而解碼過程是還原頻域 的內(nèi)容再變換成原始的時域音頻信號。按照ISO/IEC11172-3標(biāo)準(zhǔn),MP3解碼算法分為同步與 校驗、Huffman解碼、比例因子解析、反量化、重排序、立體聲處理等十個部分。

  在考慮應(yīng)用程序的多核移植時,可以是數(shù)據(jù)劃分也可以是任務(wù)劃分的。對于MP3代碼, 如果采用數(shù)據(jù)劃分式,則可以在不同的處理器內(nèi)核上解不同的數(shù)據(jù)幀。而如果采用任務(wù)劃分 方式,則可以將解碼的不同過程在多個內(nèi)核之間形成流水作業(yè),采用共享存儲區(qū)進行不同流 水級之間的數(shù)據(jù)傳遞。顯然后者需要更多的核間通信,更適合于驗證其性能,因此,本文采 用了按照任務(wù)劃分的方式進行代碼的多核移植。

  在測試中,我們采用ARM+PISA的雙核系統(tǒng),因此需要將MP3解碼程序按照功能劃分為 兩部分,分別放在兩個內(nèi)核上運行,形成流水線。本文所采用的MP3解碼軟件在ARM開發(fā) 套件(ARM Design Suit)軟件仿真平臺上測試的結(jié)果表明:合成多項濾波器部分占用了大 約50%的計算量[4]。根據(jù)這個結(jié)論,本文粗略地對應(yīng)用程序在雙核之間進行任務(wù)劃分:其中 一個內(nèi)核運行計算量最大的合成濾波,另外一個內(nèi)核實現(xiàn)Huffman解碼、比例因子解析、反 量化等步驟。兩個內(nèi)核通過系統(tǒng)提供的通信控制模塊進行通信并保持同步。

測試的統(tǒng)計結(jié)果

  表2是這一測試的統(tǒng)計結(jié)果。統(tǒng)計數(shù)據(jù)提供了兩方面的信息:

  1)MP3解碼程序的雙核加速比,由統(tǒng)計結(jié)果中的“運行周期數(shù)”反映;

  2)多核仿真器在進行MP3解碼仿真時的仿真效率,由“仿真時間”和“仿真速度”兩 項統(tǒng)計結(jié)果反映。

  5 總結(jié)

  無論考慮單位計算性能的能耗因素,還是對于提高處理器性能,多核體系結(jié)構(gòu)尤其是異 構(gòu)多核體系結(jié)構(gòu)都是當(dāng)前的熱點研究方向。本文主要論述了面向異構(gòu)多核處理器的片上通信 設(shè)計。對于處理器的內(nèi)核間通信,采用了共享內(nèi)存技術(shù)。

  本模型充分體現(xiàn)了SystemC的語言優(yōu)勢,對進一步了解和探討異構(gòu)多核處理器結(jié)構(gòu)、核 間通信、異構(gòu)多核低功耗設(shè)計等方面打下一定基礎(chǔ)。

  本文作者創(chuàng)新點: 提出了一種基于SystemC的異構(gòu)多核通信架構(gòu)模型,并通過添加控制 模塊解決異構(gòu)多核間通信通用性問題。


上一頁 1 2 3 下一頁

關(guān)鍵詞: 收發(fā)器

評論


相關(guān)推薦

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

關(guān)閉