Please use this identifier to cite or link to this item: https://cuir.car.chula.ac.th/handle/123456789/77072
Title: A morphable FPGA soft processor using LLVM infrastructure targeting low-power application-specific embedded systems
Other Titles: ซอฟต์โปรเซสเซอร์บนเอฟพีจีเอที่เปลี่ยนสภาพได้โดยใช้โครงสร้างพื้นฐานแอลแอลวีเอ็มมีเป้าหมายเพื่อระบบฝังตัวเฉพาะงานที่ใช้พลังงานต่ำ
Authors: Ehsan Ali
Advisors: Wanchalerm Pora
Other author: Chulalongkorn university. Faculty of Engineering
Issue Date: 2020
Publisher: Chulalongkorn University
Abstract: The reconfigurable computing (RC) aims to combine the flexibility of General-Purpose Processor (GPP) with performance of Application Specific Integrated Circuits (ASIC). There are several architectures proposed since RC’s inception in 1960s, but all have failed to become mainstream. The main factor preventing RC to become common practice is its requirement for implementers of algorithms (programmers) to be familiar with hardware design. In RC, a hardened processor cooperates with a dynamic reconfigurable Hardware Accelerator (HA) which is implemented on Field-Programmable Gate Array (FPGA). The HA implements crucial software kernel on hardware to increase performance and its design demands digital circuit expertise. In this paper a novel RC architecture is proposed that keeps the decades old programming practices intact while harnessing the power of HA. The architecture uses LLVM compiler infrastructure to receive an algorithm and then outputs the equivalent machine language, it then finds the most frequent instruction pairs and generates equivalent RC circuit called “Miniature Accelerator (MA)”. The instruction pairs are dynamically removed from pipeline and MA computed result replaces them in parallel. To demonstrate the concept the Fast Fourier Transform (FFT) algorithm which is core Digital signal processing (DSP) kernel is written in C and then executed on an ARM Cortex-M0. The execution of FFT function is improved by 14.12%. The proposed adaptive processor is fully backward compatible, compilation is automated, and no modification of exiting software or established programming paradigms is required.
Other Abstract: การคำนวณที่กำหนดค่าใหม่ได้ (Reconfigurable Computing: RC) มีจุดมุ่งหมายเพื่อรวมความยืดหยุ่นของ โปรเซสเซอร์เอนกประสงค์ (General-Purpose Processor: GPP) กับประสิทธิภาพของไอซีเอกประสงค์ (Application Specific Integrated Circuits: ASIC)  RC มีสถาปัตยกรรมหลายแบบตั้งแต่เริ่มมีการคิดค้นในปี 1960 แต่ทั้งหมดไม่สามารถกลายเป็นกระแสหลัก ปัจจัยหลักที่ขัดขวางไม่ให้ RC กลายเป็นแนวปฏิบัติทั่วไปคือข้อจำกัดที่ผู้ดำเนินการอัลกอริทึม (หรือ โปรแกรมเมอร์) ต้องเรียนรู้คุ้นเคยกับการออกแบบฮาร์ดแวร์แบบใหม่  ใน RC จะมีโปรเซสเซอร์คงตัว (Hard Processor: HP) ทำงานร่วมกับตัวเร่งแบบฮาร์ดแวร์ (Hardware Accelerator: HA) ซึ่งกำหนดค่าใหม่ได้แบบตามซอฟต์แวร์ ด้วยการตั้งค่าบนเอฟพีจีเอ (Field-Programmable Gate Array: FPGA) HA ช่วยทำงานทางซอฟต์แวร์บางส่วนบนฮาร์ดแวร์เพื่อเพิ่มประสิทธิภาพโดยรวม ในบทความนี้มีการเสนอสถาปัตยกรรม RC แบบใหม่ที่ช่วยให้แนวปฏิบัติด้านการเขียนโปรแกรมที่มีมาก่อนหลายปียังคงเดิมในขณะที่ใช้ HA ร่วมประมวลผลด้วย สถาปัตยกรรมนี้ใช้โครงสร้างพื้นฐานคอมไพเลอร์ LLVM เพื่อรับอัลกอริทึมแล้วสร้างภาษาเครื่องที่เทียบเท่า จากนั้นจะค้นหาชุดคำสั่งที่ใช้บ่อยที่สุดและสร้างวงจร RC ที่เทียบเท่ากันซึ่งเรียกว่า "Miniature Accelerator (MA)" ขุดคำสั่งจะถูกลบออกจากไปป์ไลน์ของ HP และผลลัพธ์จากการคำนวณของ MA จะไปแทนที่ เพื่อสาธิตแนวคิดนี้อัลกอริทึมเอฟเอฟที (Fast Fourier Transform: FFT) ซึ่งเป็นชุดคำสั่งหลักในการประมวลผลสัญญาณดิจิทัลถูกเขียนขึ้นด้วยภาษา C แล้วจึงประมวลผลบน ARM Cortex-M0 ร่วมกับ MA การทำงานของฟังก์ชัน FFT เร็วขึ้น 14.12%  เมื่อเทียบกับไม่มี MA ตัวประมวลผลที่กำหนดค่าใหม่ได้ที่เสนอนั้นเข้ากันได้แบบย้อนกลับอย่างสมบูรณ์ การคอมไพล์เป็นไปโดยอัตโนมัติ และไม่จำเป็นต้องแก้ไขซอฟต์แวร์ภาษา C ที่ออกแบบจากกระบวนทัศน์การเขียนโปรแกรมปกติ
Description: Thesis (Ph.D.)--Chulalongkorn University, 2020
Degree Name: Doctor of Philosophy
Degree Level: Doctoral Degree
Degree Discipline: Electrical Engineering
URI: http://cuir.car.chula.ac.th/handle/123456789/77072
URI: http://doi.org/10.58837/CHULA.THE.2020.154
metadata.dc.identifier.DOI: 10.58837/CHULA.THE.2020.154
Type: Thesis
Appears in Collections:Eng - Theses

Files in This Item:
File Description SizeFormat 
5871458621.pdf51.38 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.