FPGA tabanlı sentezlenebilir işlemci tasarımı
FPGA based soft-core processor design
- Tez No: 297007
- Danışmanlar: YRD. DOÇ. DR. SONGÜL ALBAYRAK
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2011
- Dil: Türkçe
- Üniversite: Yıldız Teknik Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 79
Özet
Gömülü sistemler çok geniş kullanım alanına sahiptirler. Gömülü sistemlerin gerçeklenmesinde SOC (System On a Chip) yapıları yaygın olarak tercih edilmektedir. FPGA (Field Programmable Gate Array) gibi programlanabilir lojik cihazlar SOC yapılarını esnek olarak kullanmaya imkân sağlamaktadır. Birçok FPGA üreticisi FPGA içerisine gömülü olarak SOC yapıları yerleştirmek üzerine çalışmalar yapmaktadır. SOC sistemleri FPGA üzerinde soft-core olarak gerçeklemek mümkündür. Bu sistemlerde kullanılabilecek birçok ticari veya açık kaynaklı soft-core işlemci geliştirilmiştir.Bu tez çalışmasında, FPGA üzerinde SelCPU2 soft-core işlemcisinin tasarımı yapılmış ve gerçeklenmiştir. SelCPU2 işlemcisinin tasarımında, Nios II işlemcisinin komut seti referans alınarak, az alanda yüksek komut çalıştırma performansı ve yüksek çalışma frekansı hedeflenmiştir. SelCPU2 işlemcisi komut set açısından RISC mimarisindedir. Hafıza erişimi açısından Harvard mimarisindedir, veri ve komut veri yolu ayrıdır. Hafıza erişimi load/store komutları ile yapılır. Yazmaç dosyası 32 adet 32-bit yazmaç içerir. Tek bir komutta iki kaynak ve bir de hedef yazmaç adresleyebilir. ALU komutları yazmaçlar ve/veya komut içinde belirtilen sabit değer üzerinde işlem yaparak sonucu hedef yazmaca aktarır. SelCPU2 iki saat döngüsünde üç aşamalı ardışık düzen işleme(pipeline) yapasındadır ve çoğu komut tek bir saat döngüsünde tamamlayabilir. SelCPU2 işlemcisi donanımsal çarpma ve bölme komutlarını destekler. Opsiyonel olarak veri önbelleği ve yerel bağlı hafıza birimi içerebilir. SelCPU2 işlemcisi SOC sistem veri yolu olarak Avalon-MM ara yüzünü destekler. Altera SOPC Builder aracı ile SOC tasarımda bileşen olarak kullanılabilir. SelCPU2 statik dallanma tahmini birimi içerir ve hatalı tahmin sadece bir saat döngüsü kayba neden olur. SelCPU2 işlemcisi için Assembler ve yeniden uyarlanabilir LCC C derleyicisine arka yüz geliştirilmiştir. Bu sayede ANSI C ile işlemci üzerinde çalışacak program geliştirme imkânı sağlanmıştır.Yapılan tasarımın performans değerlendirmesi eşdeğer bir SOC sistemi üzerinde Altera Nios II işlemcisi ile karşılaştırmalı olarak yapılmıştır. GCC C derleyicisinin üçüncü optimizasyon seviyesi ile elde edilen ortak assembly kodu ile yapılan Dhrystone performans testinde SelCPU2 işlemcisi 47,43 DMIPS, Nios II/f işlemcisi ise 33,48 DMIPS sonuç almıştır. Sonuç olarak SelCPU2 işlemcisi, Nios II işlemcisine göre %41 daha yüksek performans göstermiştir. Altera Cyclone III FPGA üzerinde SelCPU2 işlemcisinin maksimum çalışma frekansı 85 MHz iken Nios II/f işlemcisinin maksimum çalışma frekansı 150 MHz'dir. Alan kullanımı açısından, SelCPU2 işlemcisi 1.771 LE, Nios II işlemcisinin 2.397 LE kullanmaktadır ve SelCPU2 %26 daha az alan kaplamaktadır. Tahmini güç tüketimi analizi sonucunda SelCPU2 208 mW ile Nios II işlemcisinden %4,3 daha az güç tüketmektedir. Tez çalışması sonucunda tasarlanarak gerçeklenen SelCPU2 işlemcisinin tasarım hedeflerini karşıladığı ve ticari bir işlemci olan Altera Nios II işlemcisine göre daha yüksek performans gösterdiği görülmüştür.
Özet (Çeviri)
Embedded systems have wide range of usage area. In implementation of embedded systems, SOC designs take common place. Programmable logic devices, such as FPGA?s allow flexible SOC design implementation. In order to address current design trends, many FPGA manufacturers work on placing hard-core SOC systems into FPGAs. Currently, it is possible to implement a soft-core SOC design on a FPGA. There are many commercial or open source soft-core processors available to use on FPGA to implement SOC design.In this study, SelCPU2 soft-core processor is designed and implemented on a FPGA. In design of SelCPU2 processor, based on the instruction set of Nios II processor, minimal area usage, maximum instruction execution performance and maximum operating frequency are aimed. SelCPU2 is a general purpose Reduced Instruction Set Computer (RISC) processor core and features Harvard memory architecture. It has separate data and instruction buses. Memory access is made using load/store instructions. Register file contains thirtytwo 32-bit general purpose register. A single instruction can address two source registers and a destination register. ALU instructions perform on registers and/or immediate value that instruction may contain, and store result to a target register. SelCPU2 features three stages pipeline processing which spans two clock cycles and executes the most of the instructions in one clock cycle. SelCPU2 features single instruction hardware multiplication and division operations, optional data cache and optional directly attached data memory. SelCPU2 processor supports Avalon-MM interface and it can be used as a custom processor component in a SOC designed with Altera SOPC Builder tool. SelCPU2 features static branch prediction with just one clock cycle wrong prediction penalty. An assembler and a back-end for LCC C compiler is developed for SelCPU2 processor, so that it is possible to develop a program using ANSI C to run on SOC design.The performance evaluation of the processor design is made in comparison with an equivalent SOC design using Nios II processor. In the Dhrystone benchmark which is made using the same assembly source generated by GCC C Compiler with third level optimization, SelCPU2 scores 47.43 DMIPS and Nios II/f processor scores 33.48 DMIPS. As a result SelCPU2 processor shows 41% more performance than NIOS II processor. On Altera Cyclone III FPGA, SelCPU2 has maximum operating frequency of 85.22 MHz, while Nios II has 150.20 MHz Area usage of SelCPU2 is 1,771 LEs while Nios II uses 2,397 LEs. As a result SelCPU2 uses 26% less area than Nios II. SelCPU2 has an estimated thermal power dissipation of 208 mW which is 4.3% less Nios II?s. SelCPU2 processor that is designed in this study achieves the aims of the design and performed higher than the Altera Nios II processor which is a commercial product.
Benzer Tezler
- Dört rotorlu bir insansız hava aracına field programmable gate array tabanlı irtifa kontrolcüsü tasarımı
Field programmable gate array based altitude controller design for a four rotor unmanned aerial vehicle
BEKİRCAN KEÇEOĞLU
Yüksek Lisans
Türkçe
2021
Elektrik ve Elektronik MühendisliğiTOBB Ekonomi ve Teknoloji ÜniversitesiElektrik ve Elektronik Mühendisliği Ana Bilim Dalı
PROF. DR. COŞKU KASNAKOĞLU
- Model tabanlı adaptif LMS hüzmeleme tasarımı ve FPGAüzerinde gerçeklenmesi
Model-based design and FPGA implementation of adaptive LMS beamforming
EŞREF TEMEL
Yüksek Lisans
Türkçe
2022
Elektrik ve Elektronik Mühendisliğiİstanbul Teknik ÜniversitesiElektronik ve Haberleşme Mühendisliği Ana Bilim Dalı
DOÇ. DR. TUFAN COŞKUN KARALAR
- Leon3 mikroişlemcisi tabanlı sistem tasarımı
Leon3 microprocessor based system design
AHMET ÇAĞRI BAĞBABA
Yüksek Lisans
Türkçe
2015
Elektrik ve Elektronik Mühendisliğiİstanbul Teknik ÜniversitesiElektronik ve Haberleşme Mühendisliği Ana Bilim Dalı
DOÇ. SIDDIKA BERNA ÖRS YALÇIN
- FPGA kullanarak şablon eşleme temelli yüz tanıyan donanımın gerçekleştirilmesi
Implementing template matching based face recognition hardware using FPGA
ASİYE RÜMEYSA ÜNSAL
Yüksek Lisans
Türkçe
2023
Elektrik ve Elektronik MühendisliğiSakarya Uygulamalı Bilimler ÜniversitesiElektrik-Elektronik Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ SERKAN DERELİ
- FPGA based hardware accelerator for euler equations with finite volume method
Euler denklemleri için sonlu hacimler yöntemi ile FPGA tabanlı donanım hızlandırıcı
EMİNE ELİF YİĞİT
Yüksek Lisans
İngilizce
2024
Elektrik ve Elektronik Mühendisliğiİstanbul Teknik ÜniversitesiSavunma Teknolojileri Ana Bilim Dalı
DR. ÖĞR. ÜYESİ RAMAZAN YENİÇERİ