TMS320C6678處理器的VLFFT演示
本白皮書探討了TMS320C6678處理器的VLFFT演示。通過內置8個固定和浮點DSP內核的TMS320C6678處理器來執行16K-1024K的一維單精度浮點FFT算法樣本,檢測其分別在采用1,2,4或8核時各自的運行時間。演示的結果證明了C66X DSP內核的優異性能,以及TMS320C6678處理器跨多核平行化執行性能與內核數量成正比的特性。本文的演示采用FFT算法,該算法在諸如醫學成像、通信、軍事和商業雷達以及電子戰(干擾器、抗干擾器)等領域中被頻繁應用。本文演示結果顯示,在運行速率為1 GHz,DSP內核為8個時,用TMS320C6678處理器執行1024K的FFT算法樣本只需要6.4毫秒。
TMS320C6678 SoC
TMS320C6678處理器具有8個DSP內核,是基于TI的C66x 固定和浮點DSP內核以及 TI享有多核權利的創新型KeyStone構架創建的。它運行速度較高可達1.25GHz,在這個速度下它可以進行每秒160千兆次浮點運算,而且通常情況下消耗的電能不到10w。TMS320C6678處理器的特色是它每一個DSP內核都有512KB的 L2內存;此外,8MB的芯片內存中有4MB的共享內存,并且這兩個內存都有糾錯碼。它的DDR3界面是64位的,有8位糾錯碼,運行速度可以高達每秒1600兆比特,同時支持高達8GB的外部存儲器數據存取。此外,TMS320C6678的配套外設包括PCle、Serial RapidIO® 、Gigabit Ethernet以及TI的HyperLink界面,這個界面在連接到TI的其他DSP,ARM, ARM+DSP處理器以及第三方的FPGA時可以提供高達50Gbps的連接速度。
在本文的VLFFT演示中,TMS320C6678處理器運行速度為1GHz,DDR3界面傳輸速度為1333MHz。
圖一:TMS320C6678框圖
VLFFT演示
由于VLFFT算法要求將輸入的數據存放在處理器的外部存儲器當中,在本演示過程中,數據通過DSP內核存取、分配和處理,較后將結果輸出到外部存儲器中。同時,在整個過程中始終保持循環計數和時間測量。演示時,為TMS320C6678處理器配置不同數量的內核(1,2,4或8個)來計算當FFT大小不同時的結果,這些FFT規格包括:
·16K
·32K
·64K
·128K
·156K
·512K
·1024K
在演示過程中,通過將計算負載分布到多個核和完全充分利用C66X DSP內核高性能計算能力的方法來確保執行FFT達到較大性能。同時運用基礎時間抽取算法將一維VLFFT算法用類似的二維FFT算法來表達。這種方法是在遇到非常大的數據N時,分解成N=N1*N2的形式。在本演示過程中,如果一維輸入數組非常大,就采用N1行*N2列的二維數組來表示,然后通過以下步驟來計算FFT:
1.
計算N2列數組在N1行數組中不同大小時的FFT;
2.
乘以旋轉因子;
3.
存儲N2 列在N1行不同大小時FFT算法的結果,形成一個N2*N1的二維數組;
4.
計算N1行數組在N2列數組中不同大小時的FFT;
5.
存儲列方向上的數據形成N2*N1二維數組。
這個算法被Takahashi稱為Hitachi SR8000的高性能平行FFT算法。
在執行多核算法時,第一步是計算N2列(核的數量)在N1行規格下的FFT算法,第四步是計算N1行(核的數量)在N2列規格下的FFT算法。0核是主核,負責與所有剩下的附屬核同步。根據N1數組和N2數組的大小,每一個內核計算出來的FFT總數都被分成幾個較小的模塊以適應每個核L2 SRAM內存的空間。每一組數據都通過外部存儲器中的DMA 預取到L2 SRAM內存中,然后通過DDR將數據返回到外部存儲器中。每個核都運用2個DMA通道在外部存儲器(DDR3)和內部存儲器(L2 SRAM)中轉化輸入和輸出的數據。
結果
下頁圖表1展示了TMS320C6678評估版(TMDSEVM6678LE)分別在一個DSP周期和一個毫秒單位時間內運行FFT代碼的結果。在理想狀態下,當用于計算的內核數量增加一倍,循環計數就會減少一半。但在現實中,由于存在信息運行的天花板,同時受限于內存大小和信息寬度(內部存儲器),這種情況很難實現。在這種情況下,當用雙核取代單核時,運行FFT的時間平均減少了49.3 %,基本達到了理想的周期數的一半。當用四核替代一核時,運行FFT的時間平均減少了72.5%,而采用八核時平均運行時間則減少了81.6%。
表格一:FFT分別在1/2/4/8DSP核時周期及毫秒的結果
由此我們可以看出,無論是雙核還是四核,隨著FFT的大小從16k增加到256k,運行時間減少的幅度也越來越大,而采用八核時運行時間減少的幅度更加劇烈。這是因為對于較小的FFT,核數越多,并行代碼相對于額外增加核數來提高性能的代價要小很多。以前256KB的FFT,在提高性能方面的效果并不太理想,在雙核時只能提高2倍,四核時也只有4倍,而在八核時反而會降低其性能。這是由于八核處理數據的速度遠高于外部存儲器傳輸數據的速度,從而使其存儲空間到達上限導致的。在本演示中,計算一個大小為1024k的FFT,即一百萬點的FFT,在采用8 個DSP內核,運行速率為1GHz時,運行時間僅6.4毫秒。
圖二:單核與多核在性能上的提升
結論
綜上所述,用TI的TMS320C6678處理器來執行一個百萬點的FFT,在1GHz的工作頻率下,8核同時運行所需時間僅需6.4毫秒。如此高速的DSP內核完全足以用來執行某些應用的實時運算,比如雷達、電子戰爭和醫學繪圖等。如果用較大速度1.25GHz來運行TMS320C6678處理器,同時采用更高帶寬的DDR3和1600MTPS的話,執行運算所需時間會更短。
相關閱讀:
- ...2013/02/19 10:01·StreamWIDE推出以運營商為主導的移動通訊的全新標準—SmartMS™技術
- ...2012/10/12 10:28·德州儀器新型 Hercules™ TMS570 ARM® 安全微控制器、電源管理集成電路 (PMIC) 和電機驅動器為汽車及交通運輸設計實現跨越式起步
- ...2012/08/13 12:45·德州儀器較新低成本 TMS320C665x KeyStone 多核 DSP 為企業網關開發人員提供更高的密度與可擴展性
- ...2011/11/22 10:59·德州儀器(TI)推出 TMS320C66x 多核 DSP 新品
- ...2011/10/24 16:28·德州儀器推出基于 TMS320C66x DSP 的免費易用型軟件 工具套件充分滿足醫療影像開發人員對超高性能與超高影像質量的需求
- ...2011/10/21 14:16·更強大的德州儀器 TMS320C66x 多核 DSP 協助工業自動化開發人員實現性能、可擴展性及靈活性的空前提升
- ...· Efinix® 全力驅動AI邊緣計算,成功推出Trion™ T20 FPGA樣品, 同時將產品擴展到二十萬邏輯單元的T200 FPGA
- ...· 英飛凌亮相進博會,引領智慧新生活
- ...· 三電產品開發及測試研討會北汽新能源專場成功舉行
- ...· Manz亞智科技跨入半導體領域 為面板級扇出型封裝提供化學濕制程、涂布及激光應用等生產設備解決方案
- ...· 中電瑞華BITRODE動力電池測試系統順利交付北汽新能源
- ...· 中電瑞華FTF系列電池測試系統中標北京新能源汽車股份有限公司
- ...· 中電瑞華大功率高壓能源反饋式負載系統成功交付中電熊貓
- ...· 中電瑞華國際在電動汽車及關鍵部件測評研討會上演繹先進測評技術