Mobil platformlarda fır filtre tasarımı için FPGA ve GPU uygulamalarının enerji ve başarım analizi
Fir filter energy and performance comparison of GPU and FPGA for mobile platforms
Yazar: MEHMET BURAK AYKENAR
Danışman: DOÇ. DR. OĞUZ ERGİN
TOBB Ekonomi ve Teknoloji Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2013
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control ; Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering

Özet:
Doğrusal faz cevabı ve istikrarlı olması itibariyle FIR filtreler sayısal sinyal işleme uygulamalarında çokça kullanılmaktadırlar. Gömülü sistemlerde kullanılan ve paralel uygulanma yapısındaki FIR filtreleri gerçeklemek için FPGA?lar en gözde çözüm olarak gözükmektedirler.
Son zamanlarda büyük ölçekte paralellik özelliği gösteren ve yüksek hesaplama gücü gerektiren problemlerin çözümü için GPGPU etkili bir yöntem olarak ortaya çıkmıştır. Fakat GPGPU?lar yüksek güç tüketimleriyle kötü bir üne sahiptirler. Mobil platformlar için düşük güç tüketimi her zaman gerekli olduğu için çok çekirdekli güce aç GPGPU?lar mobil uygulamalarda çok etkili bir çözüm olmamışlardır. Xilinx?in Virtex serisi gibi güçlü FPGA?lar da aşırı enerji harcamaları nedeniyle mobil platformlarda kullanılması uygun gözükmemektedir.
Bu çalışmada, değişik tap büyüklüklerine sahip FIR filtreler Spartan 3A DSP FPGA ve ARM Cortex-A9 ve orta sınıf Vivante GPU?dan oluşan bir mobil heterojen sistem üzerinde gerçeklenmiştir. Gerçeklenen FIR filtreler enerji harcamaları ve başarım yönlerinden karşılaştırılmıştır. Spartan FPGA enerji harcaması Xilinx?in Xpower Estimator yazılım aracı kullanılarak hesaplanırken heterojen sistemin enerji harcaması sisteme giren akımın ölçülmesiyle hesaplanmıştır. FIR filtre gerçeklenirken FPGA için değişik mimariler ve GPGPU için de birçok kod eniyilemesi kullanılmıştır.
Sonuçlar Spartan 3A DSP FPGA?nın başarım ve enerji harcama yönünden GPGPU?ya göre daha üstün olduğunu göstermektedir. GPGPU, FPGA?lara göre henüz daha yeni bir saha olduğundan dolayı ilerleyen yıllarda yeni tekniklerle birlikte GPGPU tasarımlarının FPGA?lara yetişip geçmesi beklenebilir.

Abstract:
FIR filtering is one of the most common needs of digital signal processing applications demanding linear phase response and stability. Due to the inherent parallel property of FIR filter structure, FPGAs are common solutions to implement FIR filters for embedded systems.
Recently, GPGPU emerged as an effective technique for solving computation-intensive problems having massive level of parallelism. However, they are infamous with their huge power consumption. Since low power is always a requirement for mobile platforms, many-core power hungry GPGPUs seem not to be a very effective solution. Powerful FPGAs like Virtex series of Xilinx are also consume substantial amount of energy and not suitable to be utilized in mobile platforms.
In this work, FIR filters of different tap sizes on Spartan 3A DSP FPGA and a mobile heterogeneous system which includes an ARM Cortex-A9 accompanying a light-weight Vivante GPU. The implemented FIR filters are compared with respect to energy consumption and throughput values. Spartan FPGA energy consumption is calculated via Xilinx?s Xpower Estimator software tool, while the heterogeneous system energy is calculated by measuring the current flowing into the heterogeneous system. Different architectures for FPGA implementation and variety of code optimizations are done for GPGPU implementation.
The results show that Spartan 3A DSP FPGA outperforms the heterogeneous platform with respect to both energy efficiency and performance aspects. GPGPU is relatively a new concept with respect to FPGAs; thus, new GPGPU designs may challenge FPGAs with new emerging techniques.