A Field Programmable Gate Array Architecture for Two-Dimensional Partial Reconfiguration" (2006)
Total Page:16
File Type:pdf, Size:1020Kb
Wright State University CORE Scholar Browse all Theses and Dissertations Theses and Dissertations 2006 A Field Programmable Gate Array Architecture for Two- Dimensional Partial Reconfiguration Fei Wang Wright State University Follow this and additional works at: https://corescholar.libraries.wright.edu/etd_all Part of the Computer Engineering Commons, and the Computer Sciences Commons Repository Citation Wang, Fei, "A Field Programmable Gate Array Architecture for Two-Dimensional Partial Reconfiguration" (2006). Browse all Theses and Dissertations. 75. https://corescholar.libraries.wright.edu/etd_all/75 This Dissertation is brought to you for free and open access by the Theses and Dissertations at CORE Scholar. It has been accepted for inclusion in Browse all Theses and Dissertations by an authorized administrator of CORE Scholar. For more information, please contact [email protected]. A Field Programmable Gate Array Architecture for Two-Dimensional Partial Reconfiguration Dissertation in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy By Fei Wang Bachelor, Shandong University of Technology, 1989 Master, Beijing University of Aeronautics and Astronautics, 1994 _____________________________ 2006 Wright State University Wright State University School of Graduate Studies November 8, 2006 I HEREBY RECOMMEND THAT THE DISSERTATION PREPARED UNDER MY SUPERVISION BY Fei Wang ENTITLED A Field Programmable Gate Array Architecture for Two-Dimensional Partial Reconfiguration BE ACCEPTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF Doctor of Philosophy. _____________________________ Jack S. N. Jean, Ph.D., Dissertation Director _____________________________ Nikolaos Bourbakis, Ph.D., Director, Computer Science and Engineering Ph.D. Program _____________________________ Joseph F. Thomas, Jr., Ph.D., Dean, School of Graduate Studies Committee on Final Examination ________________________ Jack Jean, Ph.D. ________________________ T.K. Prasad, Ph.D. ________________________ Henry Chen, Ph.D. ________________________ Travis Doom, Ph.D. ________________________ John Loomis, Ph.D. ii Abstract Wang, Fei. Ph.D., Department of Computer Science and Engineering, Wright State University, 2006. A Field Programmable Gate Array Architecture for Two-Dimensional Partial Reconfiguration Reconfigurable machines can accelerate many applications by adapting to their needs through hardware reconfiguration. Partial reconfiguration allows the reconfiguration of a portion of a chip while the rest of the chip is busy working on tasks. Operating system models have been proposed for partially reconfigurable machines to handle the scheduling and placement of tasks. They are called OS4RC in this dissertation. The main goal of this research is to address some problems that come from the gap between OS4RC and existing chip architectures and the gap between OS4RC models and practical applications. Some existing OS4RC models are based on an impractical assumption that there is no data exchange channel between IP (Intellectual Property) circuits residing on a Field Programmable Gate Array (FPGA) chip and between an IP circuit and FPGA I/O pins. For models that do not have such an assumption, their inter-IP communication channels have severe drawbacks. Those channels do not work well with 2-D partial reconfiguration. They are not suitable for intensive data stream processing. And frequently they are very complicated to design and very expensive. To address these problems, a new chip architecture that can better support inter-IP and IP-I/O communication is proposed and a corresponding OS4RC kernel is then specified. The proposed FPGA architecture is based on an array of clusters of configurable logic blocks, with each cluster serving as a partial reconfiguration unit, and a mesh of segmented buses that provides inter-IP and IP-I/O communication channels. The iii proposed OS4RC kernel takes care of the scheduling, placement, and routing of circuits under the constraints of the proposed architecture. Features of the new architecture in turns reduce the kernel execution times and enable the runtime scheduling, placement and routing. The area cost and the configuration memory size of the new chip architecture are calculated and analyzed. And the efficiency of the OS4RC kernel is evaluated via simulation using three different task models. iv Table of Contents 1 Introduction...................................................................................................................... 1 1.1 Reconfigurable Machine and FPGA......................................................................... 1 1.2 Some Terminologies about FPGA Chip Architectures............................................. 2 1.2.1 Single Context and Multi-context Reconfiguration........................................... 3 1.2.2 Partial Reconfiguration and Flexible IP Placement........................................... 4 1.2.3 Problems with IP Relocation ............................................................................. 6 1.3 Proposed Architecture and Operating System .......................................................... 7 1.4 Original Contributions .............................................................................................. 8 1.5 Dissertation Outlines................................................................................................. 9 2 Literature Survey ........................................................................................................... 11 2.1 FPGA Chip Architectures....................................................................................... 11 2.1.1 XC4000............................................................................................................ 11 2.1.2 XC6200............................................................................................................ 14 2.1.3 DPGA............................................................................................................... 18 2.1.4 Atmel AT6000/AT40K.................................................................................... 19 2.1.5 Three-Dimensional FPGAs.............................................................................. 21 2.2 Coupling between the Fixed and Variable Part ...................................................... 24 2.3 Interconnection between On-chip Hardware Tasks................................................ 26 2.3.1 Connection Strategies for 1D Partial Reconfiguration .................................... 26 2.3.2 Connection Strategies for 2D Partial Reconfiguration .................................... 28 2.4 Operating Systems for Reconfigurable Machines .................................................. 31 2.4.1 ReconfigME..................................................................................................... 32 v 2.4.2 ETHOS............................................................................................................. 33 2.4.3 RLCOS............................................................................................................. 34 2.4.4 IMEC OS4RC .................................................................................................. 35 2.5 Reconfigurable Machine Programmability............................................................. 36 2.5.1 Why Reconfigurable Machines Are Not Popular ............................................ 37 2.5.2 Reconfigurable Machine Programming: C/C++ vs. HDL............................... 38 2.5.3 C-like Hardware Synthesis Languages ............................................................ 39 3 Aspect Ratio Effects ...................................................................................................... 44 3.1 Introduction............................................................................................................. 44 3.2 Impacts of Reshaping an IP Core............................................................................ 45 3.2.1 Example ........................................................................................................... 46 3.2.2 Simulation Results ........................................................................................... 46 3.3 Aspect Ratio Consideration on the Design of Partial Reconfiguration Structure... 49 3.3.1 A Cluster Based Partial Reconfiguration Unit................................................. 49 3.3.2 Utilization and Cluster Aspect Ratio ............................................................... 51 3.3.3 Simulation Results ........................................................................................... 52 3.3.4 Verification with Benchmark Circuits............................................................. 55 3.4 Conclusions............................................................................................................. 57 4 A New FPGA Architecture............................................................................................ 58 4.1 Overview of Chip Architecture............................................................................... 58 4.1.1 CLB Model ...................................................................................................... 60 4.1.2 Cluster Block ................................................................................................... 61 4.2 Segmented Bus Area Cost and Configuration Bits Formulation............................ 62 vi 4.2.1 Area Model .....................................................................................................