FPGA üzerinde düşük güç tüketimi odaklı sistem gerçeklemesi ve performans analizi - Gürbüz, Hakan (My University, 2024)
Donanım hızlandırıcıları, özellikle yüksek hesaplama gücü gerektiren uygulamalarda işlemcilere göre daha iyi bir performans sergilemektedir. Diğer taraftan işlemciler üzerinde farklı işletim sistemlerinin çalışmasına imkân tanıdıklarından, sistemlere esneklik ve modülerlik kazandırmaktadır. Donanım hızlandırıcılar ile işlemcilerin görevleri paylaşmaları durumunda ise (donanım/ yazılım ortak tasarımları, hardware/ software co-desing) kaynak kullanımı ve güç tüketimi optimizasyonu gibi avantajlar elde edilebilmektedir. Günümüzde üretim yapan fabrikalardan, evlerde kullanılan cihazlara; trafikte seyreden araçlarda kullanılan donanımlardan çevre izleme-gözetlemede kullanılan aygıtlara kadar kadar pek çok alanda, nesnelerin algılayıcılar, yazılımlar ve ağ bağlantısı ile donatılarak veri toplama, işleme, karar verme ve bu bilgileri paylaşma yeteneğine sahip olması Internet of Things (IoT) kavramı ile mümkün hale gelmiştir. İnternete bağlanan nesnelerin sayısı, internet kullanımının hızla yaygınlaşması ve kolay erişilebilir olmasıyla birlikte her geçen gün artmaktadır. Bu birbirinden uzakta ve çoğunlukla da şebekeden beslenmeyen dağıtık nesneler için enerji, işlemci ve hafıza kapasitesi gibi kısıtlı kaynaklar bulunmaktadır ve bu nedenle IoT’yi de içine alan birçok uygulamada bu kısıtların göz önünde bulundurulması gerekmektedir. Düşük güç tüketimi göz önünde bulundurularak tasarlanan sistemler, cihazlarının ve sistemlerinin çevre üzerindeki olumsuz etkilerini azaltarak, daha sürdürülebilir ve çevre dostu bir IoT ekosistemi oluşturmaya da yardımcı olacaktır. Böyle bir sistem tasarımı için açık kaynak projelerden faydalanmakta çeşitli avantajlar sağlayacaktır. Çünkü günümüzde işlemci üreten firmalar ürünlerini yüksek lisanslama maliyetleriyle satmaktadırlar. Ancak açık kaynak işlemciler, şeffaf ve geliştirilmeye açık oldukları gibi maliyet açısından da avantaj sunmaktadır. Düşük güç tüketimi gibi ihtiyaçlar göz önünde bulundurularak, açık kaynak işlemciler üzerinde donanım tasarımı mümkündür. Ayrıca bu donanımlar için desteği bulunan birçok açık kaynak işletim sistemi de bulunmaktadır. Bu projelerden faydalanarak amaca uygun donanım ve yazılım birlikte kullanımı ile bütün bir sistem tasarımı gerçekleştirilebilir. Bu tez kapsamında düşük güç tüketimi sağlayan bir görüntü işleme uygulaması senaryosuna yönelik donanım/ yazılım ortak tasarımı, (hardware/ software co-desing) sunulmuştur. Konvolüsyon filtreleri, özellikle görüntü işleme ve sinir ağı tabanlı görüntü sınıflandırma problemlerinde yaygın olarak kullanılmaktadır. Ancak bu filtre tasarımları, karmaşık matris işlemleri ve tekrarlı süreçler nedeniyle yüksek hesaplama gücü gerektirler. Bu tez çalışmasında, bu ve benzeri uygulamaların performansını artırmak amacıyla Microblaze tabanlı bir sistem tasarlanmış; Microblaze özel olarak yapılandırılarak, konvolüsyon filtresi donanımsal olarak gerçekleştirilmiştir. Daha sonra bu tasarım Nexys4 A7-100T FPGA geliştirme kiti üzerinde uygulanmıştır. Hem FreeRTOS hem de bare-metal yaklaşımlarıyla gerçekleştirilen konvolüsyon filtresinin yazılımsal ve donanımsal uygulama süreleri karşılaştırılmıştır. Ayrıca özel yapılandırma seçeneğinin donanım üzerindeki kaynak kullanımı ve güç tüketimine olan etkisi de detaylı bir şekilde analiz edilmiştir. Donanım ve yazılım tarafında yapılan iyileştirmelerin, güç tüketimini ve uygulama süresini azalttığı görülmüştür.

Hardware accelerators perform better than processors, especially in applications that require high computing power. On the other hand, since processors allow different operating systems to run, they provide flexibility and modularity to systems. If hardware accelerators and processors share tasks (hardware/ software co-design), advantages such as resource usage and power consumption optimization can be achieved. Today, in different areas such as industrial applications, home apliances, advanced driver assistance systems and environmental monitoring and surveillance, the concept of Internet of Things (IoT) makes all possible for objects to have the ability to collect, process, decide and share data by equipping them with sensors, software and network connections. The number of objects connected to the internet is increasing day by day, as internet use becomes more widespread and easily accessible. There are limited resources such as energy, processor and memory capacity for these distributed objects that are far from each other and often not fed from the network, and therefore these constraints need to be taken into consideration in many applications including IoT. Systems designed with low power consumption in mind will also help create a more sustainable and environmental-friendly IoT ecosystem by reducing the negative impact of devices and systems on the environment. Using open source projects to design such a system will provide various advantages. Because today, companies that produce processors sell their products with high licensing costs. However, while open source processors are transparent and open to development, and they also offer cost advantages. Considering needs such as low power consumption, hardware design on open source processors is possible. There are also many open source operating systems that have support for these hardware. By taking advantage of these projects, a whole system can be designed by using hardware/ software co-design considering specific needs. Within the scope of this thesis, hardware/ software co-design for an image processing application scenario that provides low power consumption is presented. Convolution filters are widely used especially in image processing and neural network-based image classification problems. However, these filter designs require high computational power due to complex matrix operations and repetitive processes. In this thesis, a Microblaze-based system was designed to increase the performance of the application; Microblaze was specially configured and the convolution filter was implemented on the hardware. And then Nexys4 A7-100T FPGA development kit was programmed. Execution time for the convolution filter implemented with both FreeRTOS and bare-metal approaches were compared. In addition, the impact of the special configuration option on hardware resource usage and power consumption was analyzed in detail. It has been observed that improvements made on the hardware and software side reduce power consumption and execution time.
Low power consumption focused system implementation and performance analysis on FPGA
Keywords: Convolution; Donanım Hızlandırıcı; Electric engineering; Electronics engineering; Elektrik mühendisliği; Elektronik mühendisliği; Embedded Systems; FPGA; Gömülü Sistemler; Hardware Accelerated; Konvolüsyon; Microblaze; Microblaze FPGA