Geri Dön

Model-based aı accelerator design on FPGA with in-depth evaluation of design parameters

FPGA'de model tabanli yapay zeka hizlandirici tasarimi ve tasarim parametrelerinin derinliğine değerlendirilmesi

  1. Tez No: 935981
  2. Yazar: GÖZDE ÖZDİL
  3. Danışmanlar: PROF. DR. SIDDIKA BERNA ÖRS YALÇIN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Elektrik ve Elektronik Mühendisliği, Electrical and Electronics Engineering
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2025
  8. Dil: İngilizce
  9. Üniversite: İstanbul Teknik Üniversitesi
  10. Enstitü: Lisansüstü Eğitim Enstitüsü
  11. Ana Bilim Dalı: Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Elektronik Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: 141

Özet

Yapay zeka alanı, son yıllarda bilimsel araştırmaların ve endüstriyel uygulamaların merkezinde yer alan başlıca teknolojik alanlardan biri haline gelmiştir. Özellikle derin öğrenme yöntemleri sayesinde, bilgisayarlı görü, doğal dil işleme, öneri sistemleri, biyomedikal teşhis ve otonom sistemler gibi birçok alanda insan düzeyinde ya da daha yüksek doğruluk oranlarına ulaşan yapay zeka uygulamaları geliştirilebilmektedir. Bu başarının arkasında, milyonlarca parametreye sahip karmaşık sinir ağı modelleri ve büyük veri kümeleriyle yapılan yoğun hesaplamalar yer almaktadır. Ancak bu gelişmeler, beraberinde yüksek işlem gücü, düşük gecikme süresi ve enerji verimliliği gibi teknik gereksinimleri de getirmiştir. Geleneksel işlemci mimarileri olan CPU (Central Processing Unit) ve GPU (Graphics Processing Unit) temelli sistemler, özellikle gömülü veya enerji kısıtlı ortamlarda bu gereksinimleri karşılamakta zorlanmaktadır. Özellikle gerçek zamanlı uygulamalarda yaşanan gecikmeler ve artan güç tüketimi, bu sistemlerin sınırlı ölçeklenebilirliğiyle birleştiğinde, alternatif donanım mimarilerine olan ilgiyi artırmıştır. Bu noktada FPGA'lar (Field Programmable Gate Arrays), yeniden yapılandırılabilir yapıları ve paralel işlem yetenekleriyle önemli bir çözüm olarak öne çıkmaktadır. FPGA'lar, ASIC'lere (Application-Specific Integrated Circuit) kıyasla daha esnek ve tekrar programlanabilir olmaları sayesinde, çeşitli algoritmalar için özelleştirilmiş donanım hızlandırıcılarının hızlı bir şekilde prototiplenmesine olanak tanımaktadır. Özellikle yapay zeka uygulamaları açısından bakıldığında, FPGA'lar düşük gecikmeli işlem yeteneği, düşük güç tüketimi, yüksek düzeyde özelleştirilebilirlik ve paralel işleme yatkınlık gibi avantajlar sunmaktadır. Bu özellikler, yapay zeka modellerinin uçta (edge) veya sahada (on-device) çalıştırılması gereken durumlarda, FPGA'ları cazip bir çözüm haline getirmektedir. Bu bağlamda son yıllarda, yapay zeka algoritmalarının FPGA üzerinde uygulanmasına yönelik akademik yayınların ve ticari ürünlerin sayısında dikkat çekici bir artış gözlenmiştir. Ancak, FPGA tabanlı sistemlerin geliştirilmesi genellikle donanım odaklı uzmanlık gerektirdiğinden, yazılım geliştiricilerin bu sistemlere erişimi sınırlı kalmaktadır. Bu engeli aşmak amacıyla, yüksek seviyeli soyutlama sunan yazılım araçları ve framework'ler geliştirilmiştir. AMD Xilinx tarafından geliştirilen Vitis AI framework'ü, bu ihtiyaca yanıt olarak yapay zeka modellerinin FPGA ya da SoC (System on Chip) platformlarında hızlı ve verimli bir şekilde çalıştırılmasını sağlamaktadır. Vitis AI, model kuantizasyonu, derleme, donanım uyarlama ve çıkarsama süreçlerini bütüncül bir biçimde ele alarak, kullanıcıların düşük seviyeli donanım detaylarına inmeden tasarımlarını gerçekleştirmelerine olanak tanır. Ayrıca Vitis AI, PyTorch ve TensorFlow gibi yaygın yazılım kütüphaneleriyle uyumlu çalışmakta, böylece yazılım geliştiricilerin var olan modellerini doğrudan FPGA üzerinde değerlendirebilmelerini mümkün kılmaktadır. Bu tez çalışmasında, Vitis AI framework'ü kullanılarak, Kria KV260 Vision AI Starter Kit üzerinde üç farklı yapay zeka hızlandırıcısı tasarlanmış ve uygulanmıştır. KV260 platformu, Zynq UltraScale+ MPSoC içeren bir SoC (System on Chip) çözümüdür ve hem programlanabilir mantık (PL) hem de işlemci sistemi (PS) bileşenlerini entegre biçimde sunar. Bu özellik sayesinde hem donanım hem de yazılım katmanında özelleştirme yapılabilmekte, farklı uygulamalara yönelik derin öğrenme modelleri donanım düzeyinde hızlandırılabilmektedir. İlk hızlandırıcı tasarımında, görüntü sınıflandırma görevine odaklanılmış ve araçların renklerinin tanımlanması hedeflenmiştir. Bu doğrultuda, PyTorch ortamında önceden eğitilmiş olan ResNet-18 konvolüsyonel sinir ağı (CNN) modeli kullanılmış, VCOR (Vehicle Color Recognition) veri seti ile yeniden eğitilerek uygulamaya özel hale getirilmiştir. Modelin çıkarım (inference) işlemlerinde verimliliği artırmak amacıyla Vitis AI quantizer aracı ile 8-bit tamsayıya indirgenmiş (post-training quantization), ardından Vitis AI compiler yardımıyla hedef donanım mimarisi için optimize edilmiştir. Modelin FPGA'ya yüklenmesi aşamasında PYNQ framework'ü kullanılmış ve böylece herhangi bir donanım tanımlama dili bilgisine ihtiyaç duyulmadan Python dili ile FPGA üzerinde yapay zeka çıkarımı gerçekleştirilmiştir. Modelin başarımı, test veri kümesi üzerinde yapılan değerlendirme ile doğrulanmış ve sisteme entegre edilen kamera aracılığıyla gerçek zamanlı çalışabilirliği ortaya konmuştur. İkinci hızlandırıcıda ise aynı ResNet-18 mimarisi, bu defa tıbbi görüntü sınıflandırma bağlamında yeniden kullanılmıştır. Model, akciğer röntgeni görüntülerinden zatürre teşhisini yapmak üzere Chest X-ray dataset ile fine-tune edilmiştir. Donanım altyapısı ilk tasarımdaki ile aynıdır; sadece model eğitimi farklılaştırılmıştır. Bu durum, model tabanlı yaklaşımın yeniden kullanılabilirlik ve uygulama çeşitliliği açısından sunduğu avantajları net şekilde göstermektedir. Üçüncü hızlandırıcı tasarımı ise nesne tespiti görevine odaklanmıştır. Bu aşamada, COCO veri seti ile eğitilmiş YOLOv3 derin öğrenme modeli, Vitis Model Zoo'dan önceden kuantize (pre-quantized) edilmiş olarak alınmış ve mevcut donanıma uygun şekilde derlenmiştir. Modelin FPGA'ya dağıtımı yine PYNQ üzerinden gerçekleştirilmiş, ayrıca çıkarım sonrası işlemler (post-processing) de entegre edilmiştir. Bu sayede, tespit edilen nesneler görsel çıktılarla birlikte analiz edilmiş ve sistemin kamera bağlantısı üzerinden gerçek zamanlı nesne tespiti gerçekleştirdiği gözlemlenmiştir. Bu çalışmanın en temel katkılarından biri, tüm sistemlerin Vivado TRD yerine Vitis TRD akışı izlenerek ve PetaLinux gibi karmaşık yapılandırmalar olmadan gerçekleştirilmiş olmasıdır. Literatürdeki birçok çalışmada, Vitis AI ile FPGA dağıtımı yapılırken Vivado TRD kullanımı ve Petalinux yapılandırmaları gerekli görülmektedir. Ancak bu süreçler, gömülü sistem bilgisi ve Linux kernel konfigürasyonu gibi ileri düzey donanım bilgisi gerektirir. Bu tezde önerilen model tabanlı yöntem, bu zorlukları ortadan kaldırmakta ve kullanıcıya daha erişilebilir bir geliştirme ortamı sunmaktadır. PYNQ kullanımı sayesinde, yüksek seviyeli Python betikleriyle donanım kontrolü sağlanmakta ve karmaşık yapılandırmalara gerek kalmamaktadır. Buna ek olarak, farklı DPU mimarileri ve yapılandırma parametrelerinin sistem performansı üzerindeki etkileri sistematik şekilde analiz edilmiştir. Her bir parametre — örneğin DSP kullanımı, RAM kullanımı, kanal çoğaltımı, URAM miktarı, ALU paralelliği — tek tek değiştirilmiş ve FPS (frame per second), güç tüketimi, kaynak kullanımı ve enerji başına işlem metriği gibi çıktılar değerlendirilmiştir. Bu analizler, daha önceki çalışmalarda eksik ya da yüzeysel bırakılmış alanları tamamlayıcı niteliktedir. Ayrıca farklı frekans seviyelerinde (100 MHz ila 300 MHz) yapılan testler sonucunda, frekans düşürüldüğünde enerji tüketiminin arttığı, kaynak kullanımının değişmediği ancak FPS değerinin ciddi şekilde azaldığı tespit edilmiştir. Bu gözlem, sistemin enerji verimliliği açısından sadece düşük frekansla çalıştırılmasının her zaman avantajlı olmadığını göstermektedir. Sonuç olarak bu tez, hem sınıflandırma hem de nesne tespiti görevleri için model tabanlı, enerji verimli ve kullanıcı dostu FPGA hızlandırıcı tasarımlarının nasıl geliştirilebileceğini ortaya koymaktadır. Vitis AI ve PYNQ gibi yüksek seviyeli araçlar sayesinde, donanım bilgisi sınırlı olan araştırmacıların da FPGA üzerinde yüksek performanslı yapay zeka uygulamaları geliştirebileceği gösterilmiştir. Ayrıca sunulan DPU yapılandırma analizleri ve frekans karşılaştırmaları, benzer sistemleri geliştirecek araştırmacılar için önemli bir referans sağlamaktadır. Bu çalışma, yapay zeka algoritmalarının FPGA'ya verimli şekilde aktarılmasında hem yöntemsel hem de uygulamalı katkılar sunmakta, gelecekteki araştırmalar için sağlam bir temel oluşturmaktadır.

Özet (Çeviri)

Artificial intelligence (AI) has advanced considerably in recent years. However, as models become increasingly complex, traditional hardware, such as GPUs and CPUs, faces limitations in meeting demands for power efficiency, low latency, and energy optimization. FPGAs, with their parallel processing capabilities, low latency, reconfigurable architecture, and reduced power consumption, have gained traction as an alternative platform for deploying AI models. Consequently, research on AI model deployment on FPGAs has seen significant growth in recent years. To facilitate AI deployment in FPGAs, frameworks such as Vitis AI have been introduced. This study used the Vitis AI framework to implement three different AI accelerators in the Kria KV260 Vision AI Starter Kit, a system-on-chip (SoC) platform. The first design involved vehicle color recognition using the ResNet-18 CNN model in PyTorch, fine-tuned with the Vehicle Color Recognition (VCoR) dataset. The model was quantized using the Vitis AI quantizer, compiled and optimized for deployment using the Vitis AI compiler, and then integrated onto the FPGA. The Vitis TRD flow, rather than the Vivado TRD, was followed to create the hardware design, simplifying the process and eliminating the need for PetaLinux, which is often more complex to use. Deployment on FPGA was performed using the PYNQ framework, enabling Python-based model integration without requiring any hardware description languages. The dataset was pre-processed before inference, and real-time performance was achieved by integrating the FPGA with a camera. In the second accelerator, the ResNet-18 model was fine-tuned for pneumonia diagnosis using chest X-ray images. This design reused the existing hardware, demonstrating the flexibility and adaptability of the model-based design approach for different classification tasks without additional hardware modifications. The third design implemented object detection using the YOLOv3 CNN model, pre-trained on the COCO dataset and obtained in a pre-quantized form from the Vitis Model Zoo. The model was compiled to fit the existing hardware configuration and deployed on the FPGA. Both pre-processing and post-processing steps were integrated using PYNQ, allowing bounding box generation and visualization of detected objects. Real-time object detection was achieved by connecting a live camera feed to the system. A key contribution of this work is the adoption of a model-based design approach, which simplifies FPGA deployment by avoiding the need for PetaLinux or low-level hardware design. By following the Vitis TRD flow, a more accessible and user-friendly alternative to Vivado TRD, this study developed a detailed guide for deploying AI models on FPGAs. Furthermore, the study conducted a comprehensive analysis of DPU configuration parameters and frequency settings, filling a significant gap in the literature. The results provided new insights into performance, resource utilization, power consumption, and energy efficiency, clarifying gaps, and addressing potentially misleading conclusions in previous studies within the academic literature. This work contributes to the field by presenting practical, user-friendly methods for designing and analyzing AI accelerators for both classification and object detection tasks. The study highlights the advantages of Vitis AI and model-based FPGA design, providing a guide for future research and development in the high-performance and energy-efficient AI deployment on FPGA.

Benzer Tezler

  1. Custom hardware optimizations for reliable and high performance computer architectures

    Güvenilir ve yüksek performanslı bilgisayar mimarileri için özel donanım optimizasyonları

    HAMZEH AHANGARI

    Doktora

    İngilizce

    İngilizce

    2020

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİhsan Doğramacı Bilkent Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. ÖZCAN ÖZTÜRK

  2. Ayırma işlemlerinin derin öğrenme algoritmaları ile modellenmesi

    Modeling of separation process with deep learning algorithms

    SEZİN BEKRİ DEDE

    Doktora

    Türkçe

    Türkçe

    2023

    Kimya Mühendisliğiİstanbul Üniversitesi-Cerrahpaşa

    Kimya Mühendisliği Ana Bilim Dalı

    PROF. DR. DİLEK ÖZMEN

  3. Robot kolların geleneksel ve dinamik kontrolu

    Başlık çevirisi yok

    HASAN PALAZ

    Yüksek Lisans

    Türkçe

    Türkçe

    1991

    Elektrik ve Elektronik Mühendisliğiİstanbul Teknik Üniversitesi

    PROF.DR. KEMAL SARIOĞLU

  4. Forecasting of produced output electricity in photovoltaic power plants

    Foto-voltaik güç santrallarında elektrik üretim tahmini

    TARANEH SAADATI

    Doktora

    İngilizce

    İngilizce

    2025

    Enerjiİstanbul Teknik Üniversitesi

    Enerji Bilim ve Teknoloji Ana Bilim Dalı

    DOÇ. DR. BURAK BARUTÇU

  5. İş sağlığı ve güvenliği kapsamında yapay zekâ destekli genel risk yönetimi sistemi tasarımı ve uygulaması

    Design and implementation of an artificial intelligence supported general risk management system within the scope of occupational health and safety

    MEHMET YILDIRIM

    Yüksek Lisans

    Türkçe

    Türkçe

    2025

    Mühendislik BilimleriKOCAELİ SAĞLIK VE TEKNOLOJİ ÜNİVERSİTESİ

    İş Sağlığı ve Güvenliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ FATMA DAĞDELEN