您好,欢迎光临本网站![请登录][注册会员]  
文件名称: Academic Packing for Commercial FPGA Architectures 2017.pdf
  所属分类: 硬件开发
  开发工具:
  文件大小: 1mb
  下载次数: 0
  上传时间: 2019-08-17
  提 供 者: fengji******
 详细说明:With a few exceptions, academic packing algorithms for FPGAs are typically applied solely to theoretical architectures. This has allowed the algorithms to focus on the basic components of packing while abstracting away many of the details dictated by real hardware. As commercially available FPGAs haABSTRACT Academic Packing for Commercial FPGA architectures Travis d. haroldson Department of Electrical and Computer Engineering, BYU Doctor of philosophy With a few exceptions, academic packing algorithms for FPGAs are typically applied solely to theoretical architectures. This has allowed the algorithms to focus on the basic components of packing while abstracting away many of the details dictated by real hardware. As commercially available fpgas have advanced. however, the academic algorithms and architectures haye di- verged significantly from thcir commcrcial counterpart In this dissertation, the RapidSmith 2 framework is presented. This framework accurately reflects the architecture of Xilinx FPGAs and provides support for integrating custom tools into the commercial CAD tools. USing this framework, the rsvPack packing algorithm is implemented The rsvpack algorithm can accept a design synthesized using the commercial Xilinx cad tools pack designs which make use of the many features of commercial FPGA architectures and return the packed designs to the Xilinx Cad tools to be placed and routed in their software. This enables researchers to isolate the packing portion of the algorithm from the commercial flow and evalu ate different packing techniques while allowing the high-quality commercial tools to perform the remainder of the flow Integrating the rsvPack algorithm the commercial flow shows RSVPack produces packing which lead to circuits with minimum clock periods within 10%0, on average, of circuits generated using the pure Xilinx flow Included in this work is a novel table lookup-based algorithm which RSVPack utilizes to quickly determine the routability of a cluster. This algorithm performs 5 times faster on average than the current academic alternatives. Finally, using rsVPack, this dissertation explores various techniques for improving the quality of packing for Xilinx circuits. Together, this demonstrates the potential for academic research into FPGA CAD tools for commercial architectures Keywords: FPGA, packing, Xilinx, algorithms ACKNOWLEDGMENTS This path has taken far longer than I imagined when I started back in 2011. First and foremost, I need to express profound gratitude to my wife, Amanda. Even with the countless late nights and the many Saturdays that I have spent on campus instead of with her and our children, she has been amazingly patient and supportive of me throughout this entire process. I would also like to thank my children for their patience and bright smiles that always bring me cheer. I express gratitude to my parents. From my childhood, they have instilled in me a love and respect for learning that has enabled me through this work I would also like to recognize my colleagues I have worked with in the Configurable Com- puting Laboratory. I have enjoyed the many conversations I have had with them and each of them has made the work more enjoyable. In particular, I would like to acknowledge Josh Monson and Jon-Paul Anderson who have been some of the few constants throughout my studies. I appreci- ate the advice and recommendations both have freely offered me. I would also like to single out Thomas Townsend whose help has been instrumental in preparing RapidSmith 2 for public release I would like to thank my adviser, Brent Nelson. I appreciate his patience and the counsel he has provided at times when the path forward looked hopeless. Lastly, I would like to thank brad Hutchings who for the last couple of years has served as a second adviser to me. I appreciate his input and the insights he has brought as i have pursued my studies I This work was supported in part by the I/UCRC Program of the National Science Foundation within the NSF Center for High-Performance Reconfigurable Computing(CHREC), Grant No. 1265957 TABLE OF CONTENTS List of Tables List of Figures VI Chapter 1 Introduction 1.1 Contributions of this work 4 1.2 Dissertation Organization Chapter 2 Background and related Work 2.1 Xilinx FPGa architecture 2.1.1 Tiles 2.1.2 Sites 8 2.2 FPGA CAD Flow 2.2.1 Traditional cad flow 2. 2.2 Xilinx IsE Cad flow 13 2.2.3 Academic CAD Frameworks 14 224 Academic Packing Algorithms··. .16 2. 3 Xilinx Design Language and rapidsmith 18 2.3.1 XDLRC File Format 2.3.2XDL 19 2.3.3 XDL/ISE Interoperability 20 2.3.4 Rapidsmith 1 21 Chapter 3 Rapidsmith 2 23 3.1 Subsite Device representation 24 3.1. Building Site Templates 25 3.2 Design netlist 28 3.2.1 Route Trees 29 3.3 XDL Compatibility 30 3.3.1 Integrating Custom Packers into IsE with RapidSmith 2 32 3.3.2 Non-Xilinx Architectures in RapidSmith 2 32 Chapter 4 RSVPack: A Packer for Xilinx FPGAs 33 4.1 RSVPack overview 34 4.1.1 Pack Units 34 4.2 RSVPack Algorithm 35 4. 2. 1 Seeding clusters 35 4.2.2 Seeding a cluster 35 4.2.3 Cluster Legality validation 38 4.2.4 Conditional mode 44 4.2.5 Manual Pairing of LUTs and FFs 45 4.3 Table-Lookup routing Fcasibility Improvement 46 4.3.1 Routing Feasibility: VTRS AAPack versus RSVPack 46 4.4 dentifying packing Rulcs for Xilinx Architectur·· 4.3.2 Run Time Improvement 4 51 4.5 Integrating rsvPack into the Xilinx ISE CAD Flow .52 4.5.1 Pure ise flows 53 4.5.2 RSX Flow 54 4.53 RSV flow 54 4.6 RSVPack performance 4.6.1 Benchmark set 55 4.6.2 RSVPack results 56 4.6.3 Summary Chapter 5 Experimenting with Packing Xilinx FPGAs Using RSVPack 61 5.1 Experiment 1: Impact of Packing on Circuit Quality 5.1.1 Experiment setup 61 5.1.2 Rcsults 62 5.2 Experiment 2: Cluster Underutilization 5.2.1 Two-Hop Deep Cell selector 65 2 Experiment Setup 66 5.2.3 Results and conclusion .,.66 5.3 Experiment 3 Tile Versus Site Level Packing 67 5.3.1 Back ground 68 5.3.2 Experiment Setup 5.3.3 Results and analysis 70 5.3.4 Experiment Conclusions 73 5.4 Summary 74 Chapter 6 Conclusion 75 6. 1 Summary of rcscarch 75 6.2 Future Work 76 REFERENCES 78 ppendix a Publications and Documentation 84 Appendix b rapidsmith 2 Changelist 85 Appendix C Xdl-Unpacking and XDL-Packing algorithms 86 C1 Design Unpacking 86 C2 XDL-Packing 88 Appendix d Checks Required for Packing for a Virtex 6 Device 92 LIST OF TABLES 2.1 CAD Flow Stage Inputs and Outputs 4.1 Routing Connectivity Lookup Table for Figure 4.7a 48 4.2 Average Runtimes for Each Outcome of routing Fcasibility Checking(in microseconds) 50 4.3 Benchmarks Used to Analyze rsvPack 55 4.4 Number of Used Slices and Percent of Lut5s Merged 56 4.5 Clustering of LUT/FF Pairs and Nets Exposed From Slices 57 4.6 Minimum Periods of Benchmarks Implemented with Different Flows(in ns) 58 4.7 Total Wire Length of benchmarks Implemented with Different Flows (in Thousands of Tiles travelled 58 4.8 Implementation Runtimes for each Flow in Seconds(Median of 20 runs) 60 5.1 Influence of 2-Hop Deep cell Selector on Benchmarks 66 5.2 Used Slices for Rsv-Site and rsV-Tile Implemented Benchmarks 70 5.3 HPWL, Used Wire Length, and Minimum Periods of rsv-Site and rsv-Tile Imple mented Benchmarks 70 5.4 Run Times for rsv-Tile and rsv-Site in Seconds 72 5.5 Used Wirc Length and minimum Periods of rsX-Sitc and rsX-Tilc Implemented Benchmarks 72 LIST OF FIGURES 1.1 A Traditional Academic le(1.la)vs a virtex 6 le (1.1b) 1. 2 The Traditional Cad Flow 3 2.1 Hicrarchy of a Xilinx Tile 2. 2 Device arranged as a grid of Tiles 2.3 Connectivity Inside a Switch Box 6789 2. 4 A Xilinx Virtex 6 CLB and adjacent Switch Box 2.5 A Xilinx Virtex 6 Logic Element 2.6 Correspondence between the Traditional and Xilinx ISE CAd Flows 12 2.7 Sample of an XDlRc Device description 2.8 A 4-Bit Adder Netlist(a) and its XDL Representation(b) 20 2.9 Steps in the Ise Tool Chain Where Designs can be Converted to XDL 21 3.1 The Extended Device Representation in RapidSmith 2 24 3.2 The Site Level Hierarchy(shaded) of Xilinx FPGAs 25 3.3 An XDLRC Primitive_def (left)with its Rapid Smith 2 Representation (right)...... 26 3.4 A Polarity Mux Schematic(left) and its XDLRC Representation (right) 28 3.5 Rclationship Betwccn RapidSmith 2 Nctlist API Classes 29 3.6 Subsite and Intersite Sections of a route tree 30 3.7 Converting Between an XDL Instance and rs2's Cell-Based Netlist 30 3.8 Flow for a Custom Packer Using rapidSmith 2 32 4.1 Possible Invalid Packings for Clustcrs With Multiple Carry Chains 39 4.2 Examples of Legal and Illegal Fracturable LUT Usage 42 4.3 Example of an aslut that must be conditionally packed with a carry chain 43 4.4 Carry chain element using both do and co pins must be packed with a FF 43 4.5 Example of Entering and Resolving Conditional Mode 44 4.6 Example of packing lut/Ff Pairs Together 45 4.7 Example for Determining Routing Feasibility 48 4.8 Projected Run Times Using Pin Counting 50 4.9 Implementation Flows used in this work 53 4.10 Densities of Slices Packed with Xilinx and rsvPack(average of benchmarks 57 5.1 Average Increase in Minimum Period Against Packing Quality 62 5.2 Average Increase in Wire Length Against Packing Quality 63 5.3 Progression of Packing Density of Clusters over Packing Process .64 5.4 Example of a Pocket Forming Around a Cell (B) during Packing 64 5.5 Utilization of LEs in Slices when Using Single-Hop and Two-Hop Cell Selectors 67 5.6 Progression of Packing Density of Clusters over Packing Process with Two-Hop Cell elector 67 5.7 Flows for Comparing Tile-Level and Site-Level Based Packing 69 5. 8 Non-Overlapping Carry Chains Paired Together in a ClB 74 C 1 Converting between XDL and rapidsmith 2 with the design- Unpacker 86 C 2 A BEL entry in the unpack xm1 87 C. 3 A BEL entry in the pack. xml 90 ChAPTER 1. INTRODUCTION Publicly available research into FPGA CAD algorithms and frameworks is important in opening up exploration of novel concepts relating to the FPGa cad flow to the academic research community. The availability of this information and these tools enables new techniques to both the general Cad flow as well as special applications, such as fPga reliability and security that may not be addressed by the fpga vendor tools. because the commercial vendors do not release their algorithms and internal tools to the public, it is necessary for people interested in researching new algorithms and flows to develop their own tools. For the remainder of this dissertation, the public information on Cad tools available in the public research literature will be referred to as academic Academic research into Cad algorithms for commercial fPga architectures has been hin dered by a lack of CAD infrastructure for these devices. As commercial architectures have added advanced features and capabilities to the configurable logic blockS(ClBs), academic frameworks and algorithms have settled for working with FPGa architectures, like those used in [l that re scmble less and less the architectures available from the commercial vendor The traditional architecture used in academic research is comprised of a collection of clbs made up of multiple lutynip-flop(FF)pairs, called logic elements or LEs, like the one shown in Figure 1.la. In contrast, the LEs found in recent commercial architectures, like the one in Figure 1.1b, contain many special- purpose components connected with sophisticated routing and often interact with other LEs in the same ClB. Additionally, each of the lEs in the clBs in these architecture have slight variations leading to an irregular structure in how they interconnect Packing algorithms for FPGAs are especially affected by the added complexity of the CLBs. Packing is a step in the traditional FPGA CAd flow(Figure 1.2)and which is respon sible for assembling the LUTs, FFs, and other basic components into relatively-placed structures called clusters, that map onto the CLBs. Packing is, therefore, responsible for handling the highly-
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 输入关键字,在本站1000多万海量源码库中尽情搜索: