Simdify: Framework for application specific simd-processing with RISC-V scalar instruction set
Simdify: RISC-V skaler komut seti ile uygulamaya özel simd işleme iskeleti
- Tez No: 668096
- Danışmanlar: PROF. DR. ARDA YURDAKUL
- 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: 2021
- Dil: İngilizce
- Üniversite: Boğaziçi Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Sistem ve Kontrol Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 93
Özet
Donanım olarak tasarlanmış hızlandırıcıların büyük bir kısmı, işlemciyle özel komutlar aracılığıyla iletişim kurar. Özel talimatlar standart olmadığından, her hızlandırıcı farklı bir derleyici ve kullanıcı kodu gerektirir ve bu da kullanıcı için zorlu bir süreç olabilir. Kullanıcı yükünü azaltmak amacıyla, tek komut çoklu veri (SIMD) komutlarını kullanmadan SIMD işlemcileri üreten SIMDify adlı paralel bir programlama çerçevesi sunuyoruz. SIMDify, skaler RISC-V komut kümesi mimarisi (ISA) için derlenen makine kodunu alır ve SIMD işleme bölgelerini belirlemek için simüle eder. Ardından, SIMD veri yolunda skaler RISC-V komutlarını eşzamanlı yürüten ve uygulamaya özel olan SIMD işlemcisini yapılandırır. Üretilen SIMD işlemcisi, bir ana ve birden çok köle işlem öğesinden oluşur. Köleler, SIMD işlemlerine odaklanırken, ana işlem öğesi kontrolden sorumludur. Önerilen mimari, yüksek seviyeli sentez (HLS) araçlarında tasarlanan ilk SIMD özellikli RISC-V işlemcisidir. Mimarinin mevcut tek komut tekli veri (SISD) RISC-V HLS çekirdeklerinden daha hızlı bir frekansta çalıştığı gösterilmiştir. SIMDify, kullanıcıyı esnek olmayan programlama modelleriyle özel komutları kullanmaktan kurtarır ve esnek bir çözüm sunar. İşlemci Vivado HLS 19.2'de tasarlanmış ve test edilmiştir. Zynq Zedboard alanda programlanabilir kapı dizisi (FPGA) üzerinde 78 MHz'de çalışır. Ana öğe, FPGA kaynaklarının %5 ini kullanır ve her köle kaynak kullanımını %3,5 arttırır. Test sonuçları, işlem süresinin 9 köle ile 8,5 kat ve 29 köle ile 19 kat hızlanabileceğini göstermektedir.
Özet (Çeviri)
Most of the hardware accelerators communicate with the processor via custom instructions. Since custom instructions are not standardized, each accelerator requires a different compiler and user code, which can be a tedious process for the user. To reduce the user burden, we propose a parallel programming framework called SIMDify, which generates single-instruction-multiple-data (SIMD) processors that can achieve SIMD processing without using custom instructions. SIMDify takes an application machine code compiled for scalar RISC-V ISA and simulates it to determine the SIMD processing regions. Then, SIMDify configures and generates the application-specific SIMD processor that executes scalar RISC-V instructions concurrently on the SIMD datapath. SIMD processor consists of a single master and multiple slave processing elements (PE). Slaves focus on SIMD level tasks, whereas the master is responsible for the central control. Proposed architecture is the first SIMD capable RISC-V processor designed in HLS and can operate with a faster clock frequency than the existing SISD RISC-V HLS cores. SIMDify relieves the user from using custom instructions with rigid programming models and offers a flexible solution. The processor is designed and tested in Vivado High Level Synthesis 19.2. It operates at 78 MHz on Zynq Zedboard FPGA. Master PE uses 5% and each slave uses 3.5% of FPGA resources. Test results show that execution time can be improved by 8.5x with 9 slaves and 19x with 29 slaves.