Abstract. 1 Introduction. Reconfigurable Logic and Hardware Software Codesign. Class EEC282 Author Marty Nicholes Date 12/06/2003
|
|
- Moses Powers
- 5 years ago
- Views:
Transcription
1 Title Reconfigurable Logic and Hardware Software Codesign Class EEC282 Author Marty Nicholes Date 12/06/2003 Abstract. This is a review paper covering various aspects of reconfigurable logic. The focus is on hardware that assists a general purpose processor. Some of the solutions discussed reconfigure dynamically, while others are more static in nature. Reconfigurable computing, when done dynamically is the pinnacle of success in this field. This would allow hardware that could be customized on the fly to the task that needs to be performed. Some discussion of static reconfiguration is important, because this work provides the foundational algorithms needed to efficiently configure the hardware to the task. The main paper referenced is [a], which describes Programmable Active Memories. The work described has become the basis for much subsequent research. 1 Introduction Reconfigurable logic is critical to the issues of hardware/software codesign. The main reason is that it is this logic that is either used to prototype an ASIC solution, or to implement the final hardware assist solution. The area of reconfigurable logic spans a variety of implementation techniques. One scale to measure the techniques is the frequency of reconfiguration. [f] describes a fanciful handheld device that is able to reconfigure on the fly for new network protocols, or security algorithms, and even deconfigure unused logic to save power. Although the article does not describe any unique research, it does provide a vivid picture of future uses of reconfigurable logic. Starting with the low frequency of reconfiguration is the traditional use of the FPGA in the role of assist hardware, where reconfigurations are only to fix bugs or slightly enhance functionality. Next comes hardware that is configured for a particular program, and is dedicated to that application. Use of the FPGA as a prototyping vehicle for ASIC development falls in this category as well. The next area is the area of faulttolerant hardware which can be reconfigured during operation to replace a defective part of the hardware. This is also called enbryonics, due to the fact that the hardware is structured like living cells [e]. [a] reviews the PAM hardware system that can be reconfigured for each application. The paper asserts that a PAM could be time-shared among 12 applications, but there is no supporting evidence for this claim. The final stage is reached with evolvable systems where the hardware can be reconfigured while it is being utilized. This will require many aspects of the various hardware systems described in this paper to work perfectly. This final stage exhibits the most important benefits of reconfigurable logic, including flexibility in the purposing of the hardware resources available. This flexibility allows the system to make runtime adjustments to hardware to tradeoff the critical factors of performance and power consumption. As [f] describes, the
2 Reconfigurable Logic and Hardware Software Codesign Page : 2 move is to mobile computing, and reconfigurable logic has much to offer in this area. The rest of the paper is organized as follows. Section 2 provides a quick overview of the FPGA. Section 3 covers the various techniques used to provide reconfigurable logic. Section 4 describes some of the applications for these techniques. Section 5 raises the issues preventing faster progress in this field. Section 6 is the conclusion. 2 FPGA Basic Building Block The field programmable gate array is the hardware basis for most of the papers. This chip contains logic that can be wired up on the fly in order to implement a design. The work being performed in this area utilizes the FPGAs in a variety of ways in the associated configurable hardware subsystem. FPGAs have good characteristics for this application. They are flexible, and of course, reprogrammable. The drawbacks of FPGAs are that they can be slow to reconfigure, they are expensive, and they require a complex tool chain to calculate the bitstream required to reconfigure an FPGA. The solutions discussed in the next section have interesting ways to work around these limitations. 3 Reconfiguration Techniques Reconfigurable logic requires some common steps: 1) profile the software, 2) find interesting code sections, 3) implement interesting code in hardware, 4) modify the software to use the hardware, and 5) run the partitioned system. Of course, many decisions about the amount of hardware resources to make available for reconfiguration must be made. In [a], the PAM prototype P1, uses a driver to provide access to hardware reconfiguration. A 1.5 Mb bitstream reconfigures the hardware. The hardware consists of 23 Xilinx FPGAs (5 switch FPGAs, 2 controller FPGAs, 16 FPGAs in a matrix), 4 blocks of 1MB each,, and 2 FIFOs. Figure 1 shows the structure of the P1 design. Figure 1 P1 PAM Design The programming language chosen was C++ with enhancements to describe nets. A simulation environment was also available. Results showed that the tools allowed non-ee students to successfully use the toolchain in a few weeks, compared with similar results with ASICs requiring highly skilled engineers. The main design guideline described in [a] is: cast the inner loop in PAM hardware; let the software handle the rest! Figure 2 Dynamic HW/SW Partitioning System Architecture [c] [c] describes a self-contained system which is a processor module that contains the following: a general-purpose microprocessor, memory, configurable
3 Reconfigurable Logic and Hardware Software Codesign Page : 3 Figure 3 Dynamic Partioning and Configurable Logic Module Detail [c] logic, and a dynamic partitioning module. Figure 2 shows the overall structure of the processor module, while Figure 3 shows details of the special logic. This early prototype design attempts at runtime to determine the location of candidate code loops by snooping instruction fetches from main memory. The system then disassembles the code and creates control and data flow graphs. Using this information, a bitfile for hardware reconfiguration is created, and the software binary is patched to trigger the hardware. While the reconfigured hardware is executing, the processor transitions to a low power state. This prototype has many limitations, including: 1) supports 1 cycle loops only, 2) memory accesses must be sequential, 3) provides only basic hardware logic, and 4) requires manual binary patching. However, this avenue is promising, because of the possibility of conserving on power, while improving performance on various algorithms. More promising in the runtime reconfiguration space is the design discussed in [d]. The PipeRench design consists of processing units (PE) attached to a reconfigurable data path. Figure 4 shows how the hardware reconfigures as needed, taking only 1 clock cycle for each stripe, which is the basic building block. Figure 5 shows the internal structure of a stripe. The big advantage of the PipeRench design is the hardware is abstracted from the software, allowing software to be ported between different PipeRench hardware implementations. The performance and energy efficiency are very impressive. [d] compares PipeRench running at 120 Mhz with an 800 Mhz PentiumIII processor. The algorithm is for encryption and the PipeRench hardware outperforms the processor by a factor of 5. Figure 4 PipeRench Overview [b] describes related work which is used to assist with software analysis to determine which code should be implemented in hardware. [b] describes a tool (LOOAN) that is used to detect critical loops in the software. The loop code is then recoded in a special C language called SA-C (single assignment C). The Toolchain flow is shown in Figure 6. The target architecture for this work is a processor and FPGA connected on a memory bus. One interesting aspect of the work in [b] is the result achieved in the area of energy improvement. The combined FPGA/processor system was capable of an average speedup of 1.6, while achieving an average energy savings of 25%. This is very promising, since this allows not only a lower power solution, but also allows a
4 Reconfigurable Logic and Hardware Software Codesign Page : 4 Figure 5 PipeRench Dynamic Reconfiguration slower processor to be designed into the system, which save design cost. However, the cost of the FPGA must be factored into the full analysis. Figure 6 Design Flow for Hardware/software Partitioning [b] 4 Applications [a] described various PAM applications. RSA encryption and decryption, faster than any previous implementation by an order of magnitude. Genetic applications such as DNA matching. A company called Compugen sells a PAM that speeds up biological searches. It looks like a co-processor to the the host. Applications like heat and Laplace equations are perfect for PAM. For example, a PAM at 20 Mhz can achieve 5 G operations (add and shift) each second. [a] compares this result with a super computer which would have to operate at 20 B instructions per second to match this. This illustrates the power of parallel operations. Further PAM examples are similar: Boltzmann algorithm to minimize quadratic equations (used in circuit placement). Again, a formula that allows a high amount of parallelism. Similarly, the video compression usage relies on the fact that the operation is highly suited to pipelining, operating on small squares of video frames [a]. In high-energy physics, where images from particle collisions must be evaluated, the algorithms, which like video compression, operate on small images, which lend themselves to pipelining. In physics, the images are 20x20x32 b that must be processed every 10 microseconds. [a] describes one interesting application that lays out the speed difference between the various implementations used in correlating pairs of images for stereo vision. Software performs the operation in 59 seconds on a SPARC-Station II, a hardware design using 4 DSPs takes 9.6 seconds, while the P1 takes 0.28 seconds. It would be interesting to compare the power used in each of these three implementations. [a] continues on with more examples of sound synthesis, and finally a Viterbi encoder/decoder with large constraint length codes. So, what is the common thread in all the examples? The fact the algorithms
5 Reconfigurable Logic and Hardware Software Codesign Page : 5 operate on large quantities of data in a repetitive fashion. Larger speedups are possible when the operation is computationally expensive for a general purpose processor, like multiplication, division, etc. 5 Issues One critical issue is the lack of a transparent tool chain to support development onto a platform with a reconfigurable hardware subsystem. Both [c] and [d] make some progress in this area. The approach used in [c] is to place a very simple tool chain in the hardware itself. As hardware density continues to increase, this may become a more viable solution. [d] makes the choice of limiting the runtime configuration to the datapath connections, and so is able to achieve single cycle reconfiguration. This simplification also allows the customization of the hardware to be done in the application code. [d] makes progress in the most critical area, the application is built on an application programming interface that abstracts the hardware implementation from the software code. [a] describes the fact that a PAM could time-share with 12 applications. The implementation of this was not discussed. This is the main problem with trying to combine a general-purpose machine running many applications with some reconfigurable hardware. How will it be possible to share that hardware, when jobs are being swapped in and out. The time to reconfigure the hardware will be a large issue, as will the ability to swap out the internal state of the reconfigurable logic. Finally [f] covers some of the hardware issues that are limiting this work. PLDs use expensive SRAM, which raises the price of the parts. In addition, these devices use more power than ASICs, and run at slower speeds. 6 Conclusion It would be interesting to combine the work of [c] with [b]. The architecture targeted with [b] is the same architecture used in [c]. The biggest issue would be to take the more extensive loop analyzer and logic synthesis capabilities and place them into hardware. Both designs have the processor in a low power state while the hardware assist is operating. The field of reconfigurable logic is very exciting. This will be a critical area for continued research and development, as vendor s seek to increase system performance, while keeping clock speed and power constrained. Reconfigurable logic may the answer. 7 References [a] J. Vuillemin, P.Bertin, et. al, Programmable Active Memories: Reconfigurable Systems Come of Age, IEEE Transactions on VLSI Systems, March 1996 [b] J. Villareal, D. Suresh, G. Stitt, F. Vahid, W. Najjar, Improving Software Performance with Configurable Logic, Design Automation for Embedded Systems, 2002 [c] [d] [e] G. Stitt, R Lysecky, F. Vahid, Dynamic Hardware/Software Partitioning: A First Approach, DAC, June 2003 H. Schmit, D. Whelihan, A. Tsai, M. Moe, B. Levin, R. Taylor, PipeRench: A Virtualized Programmable Datapath in 0.18 Micron Technology, CICC, 2002 G. De Micheli, R. Ernst, W. Wolf, Readings in Hardware/Software Co-Design, Morgan Kaufmann Publishers, 2002
6 Reconfigurable Logic and Hardware Software Codesign Page : 6 [f] N. Tredennick, B. Shimamato, Go Reconfigure ; Programmable logic devices will give us a handheld that does everything-well, IEEE Spectrum, 10/01/2003
7 Ref. : Reconfigurable Logic and Hardware Software Codesign Page : 2 of -7
A Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning
A Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning By: Roman Lysecky and Frank Vahid Presented By: Anton Kiriwas Disclaimer This specific
More informationINTRODUCTION TO FPGA ARCHITECTURE
3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)
More informationDigital Design Methodology (Revisited) Design Methodology: Big Picture
Digital Design Methodology (Revisited) Design Methodology Design Specification Verification Synthesis Technology Options Full Custom VLSI Standard Cell ASIC FPGA CS 150 Fall 2005 - Lec #25 Design Methodology
More informationDigital Design Methodology
Digital Design Methodology Prof. Soo-Ik Chae Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008, John Wiley 1-1 Digital Design Methodology (Added) Design Methodology Design Specification
More informationLecture 7: Introduction to Co-synthesis Algorithms
Design & Co-design of Embedded Systems Lecture 7: Introduction to Co-synthesis Algorithms Sharif University of Technology Computer Engineering Dept. Winter-Spring 2008 Mehdi Modarressi Topics for today
More informationFPGA: What? Why? Marco D. Santambrogio
FPGA: What? Why? Marco D. Santambrogio marco.santambrogio@polimi.it 2 Reconfigurable Hardware Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much
More informationIntroduction Warp Processors Dynamic HW/SW Partitioning. Introduction Standard binary - Separating Function and Architecture
Roman Lysecky Department of Electrical and Computer Engineering University of Arizona Dynamic HW/SW Partitioning Initially execute application in software only 5 Partitioned application executes faster
More informationA Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes
A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes Presented at Design Automation Conference (DAC) San Francisco, CA, June 4, 2012. Presented by Chuck Cruse FPGA Hardware
More informationHardware Software Codesign of Embedded Systems
Hardware Software Codesign of Embedded Systems Rabi Mahapatra Texas A&M University Today s topics Course Organization Introduction to HS-CODES Codesign Motivation Some Issues on Codesign of Embedded System
More informationReconfigurable Computing. Introduction
Reconfigurable Computing Tony Givargis and Nikil Dutt Introduction! Reconfigurable computing, a new paradigm for system design Post fabrication software personalization for hardware computation Traditionally
More informationNew development within the FPGA area with focus on soft processors
New development within the FPGA area with focus on soft processors Jonathan Blom The University of Mälardalen Langenbergsgatan 6 d SE- 722 17 Västerås +46 707 32 52 78 jbm05005@student.mdh.se Peter Nilsson
More informationAdvanced FPGA Design Methodologies with Xilinx Vivado
Advanced FPGA Design Methodologies with Xilinx Vivado Alexander Jäger Computer Architecture Group Heidelberg University, Germany Abstract With shrinking feature sizes in the ASIC manufacturing technology,
More informationEECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs)
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Fall 2002 EECS150 - Lec06-FPGA Page 1 Outline What are FPGAs? Why use FPGAs (a short history
More informationOutline. EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) FPGA Overview. Why FPGAs?
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Outline What are FPGAs? Why use FPGAs (a short history lesson). FPGA variations Internal logic
More informationHardware Software Codesign of Embedded System
Hardware Software Codesign of Embedded System CPSC489-501 Rabi Mahapatra Mahapatra - Texas A&M - Fall 00 1 Today s topics Course Organization Introduction to HS-CODES Codesign Motivation Some Issues on
More informationProgrammable Logic Devices FPGA Architectures II CMPE 415. Overview This set of notes introduces many of the features available in the FPGAs of today.
Overview This set of notes introduces many of the features available in the FPGAs of today. The majority use SRAM based configuration cells, which allows fast reconfiguation. Allows new design ideas to
More informationIntroduction to Embedded Systems
Introduction to Embedded Systems Outline Embedded systems overview What is embedded system Characteristics Elements of embedded system Trends in embedded system Design cycle 2 Computing Systems Most of
More informationDigital Electronics 27. Digital System Design using PLDs
1 Module -27 Digital System Design 1. Introduction 2. Digital System Design 2.1 Standard (Fixed function) ICs based approach 2.2 Programmable ICs based approach 3. Comparison of Digital System Design approaches
More informationCS310 Embedded Computer Systems. Maeng
1 INTRODUCTION (PART II) Maeng Three key embedded system technologies 2 Technology A manner of accomplishing a task, especially using technical processes, methods, or knowledge Three key technologies for
More informationVery Large Scale Integration (VLSI)
Very Large Scale Integration (VLSI) Lecture 6 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Contents FPGA Technology Programmable logic Cell (PLC) Mux-based cells Look up table PLA
More informationA Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning
A Study of the Speedups and Competitiveness of FPGA Soft Processor Cores using Dynamic Hardware/Software Partitioning Roman Lysecky, Frank Vahid To cite this version: Roman Lysecky, Frank Vahid. A Study
More informationScalable and Dynamically Updatable Lookup Engine for Decision-trees on FPGA
Scalable and Dynamically Updatable Lookup Engine for Decision-trees on FPGA Yun R. Qu, Viktor K. Prasanna Ming Hsieh Dept. of Electrical Engineering University of Southern California Los Angeles, CA 90089
More informationSpiral 2-8. Cell Layout
2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric
More informationFPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.
FPGA Logic block of an FPGA can be configured in such a way that it can provide functionality as simple as that of transistor or as complex as that of a microprocessor. It can used to implement different
More informationOverview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips
Overview CSE372 Digital Systems Organization and Design Lab Prof. Milo Martin Unit 5: Hardware Synthesis CAD (Computer Aided Design) Use computers to design computers Virtuous cycle Architectural-level,
More informationReconfigurable Architecture Requirements for Co-Designed Virtual Machines
Reconfigurable Architecture Requirements for Co-Designed Virtual Machines Kenneth B. Kent University of New Brunswick Faculty of Computer Science Fredericton, New Brunswick, Canada ken@unb.ca Micaela Serra
More informationEN2911X: Reconfigurable Computing Lecture 01: Introduction
EN2911X: Reconfigurable Computing Lecture 01: Introduction Prof. Sherief Reda Division of Engineering, Brown University Fall 2009 Methods for executing computations Hardware (Application Specific Integrated
More informationASIC, Customer-Owned Tooling, and Processor Design
ASIC, Customer-Owned Tooling, and Processor Design Design Style Myths That Lead EDA Astray Nancy Nettleton Manager, VLSI ASIC Device Engineering April 2000 Design Style Myths COT is a design style that
More informationDesign Methodologies. Full-Custom Design
Design Methodologies Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores) Design
More informationFPGAs: FAST TRACK TO DSP
FPGAs: FAST TRACK TO DSP Revised February 2009 ABSRACT: Given the prevalence of digital signal processing in a variety of industry segments, several implementation solutions are available depending on
More informationMapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience
Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience H. Krupnova CMG/FMVG, ST Microelectronics Grenoble, France Helena.Krupnova@st.com Abstract Today, having a fast hardware
More informationRUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC. Zoltan Baruch
RUN-TIME RECONFIGURABLE IMPLEMENTATION OF DSP ALGORITHMS USING DISTRIBUTED ARITHMETIC Zoltan Baruch Computer Science Department, Technical University of Cluj-Napoca, 26-28, Bariţiu St., 3400 Cluj-Napoca,
More informationFPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011
FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level
More informationOverview of Microcontroller and Embedded Systems
UNIT-III Overview of Microcontroller and Embedded Systems Embedded Hardware and Various Building Blocks: The basic hardware components of an embedded system shown in a block diagram in below figure. These
More informationRED: A Reconfigurable Datapath
RED: A Reconfigurable Datapath Fernando Rincón, José M. Moya, Juan Carlos López Universidad de Castilla-La Mancha Departamento de Informática {frincon,fmoya,lopez}@inf-cr.uclm.es Abstract The popularity
More informationThe QR code here provides a shortcut to go to the course webpage.
Welcome to this MSc Lab Experiment. All my teaching materials for this Lab-based module are also available on the webpage: www.ee.ic.ac.uk/pcheung/teaching/msc_experiment/ The QR code here provides a shortcut
More informationHardware-Software Codesign. 1. Introduction
Hardware-Software Codesign 1. Introduction Lothar Thiele 1-1 Contents What is an Embedded System? Levels of Abstraction in Electronic System Design Typical Design Flow of Hardware-Software Systems 1-2
More informationSoftware consists of bits downloaded into a
C O V E R F E A T U R E Warp Processing: Dynamic Translation of Binaries to FPGA Circuits Frank Vahid, University of California, Riverside Greg Stitt, University of Florida Roman Lysecky, University of
More informationCo-synthesis and Accelerator based Embedded System Design
Co-synthesis and Accelerator based Embedded System Design COE838: Embedded Computer System http://www.ee.ryerson.ca/~courses/coe838/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer
More informationDesign Methodologies and Tools. Full-Custom Design
Design Methodologies and Tools Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores)
More informationA Time-Multiplexed FPGA
A Time-Multiplexed FPGA Steve Trimberger, Dean Carberry, Anders Johnson, Jennifer Wong Xilinx, nc. 2 100 Logic Drive San Jose, CA 95124 408-559-7778 steve.trimberger @ xilinx.com Abstract This paper describes
More informationECEN 449 Microprocessor System Design. FPGAs and Reconfigurable Computing
ECEN 449 Microprocessor System Design FPGAs and Reconfigurable Computing Some of the notes for this course were developed using the course notes for ECE 412 from the University of Illinois, Urbana-Champaign
More informationEmbedded System Design
Embedded System Design p. 1/2 Embedded System Design Prof. Stephen A. Edwards sedwards@cs.columbia.edu Spring 2006 Spot the Computer Embedded System Design p. 2/2 Embedded System Design p. 3/2 Hidden Computers
More informationWorkspace for '4-FPGA' Page 1 (row 1, column 1)
Workspace for '4-FPGA' Page 1 (row 1, column 1) Workspace for '4-FPGA' Page 2 (row 2, column 1) Workspace for '4-FPGA' Page 3 (row 3, column 1) ECEN 449 Microprocessor System Design FPGAs and Reconfigurable
More informationCOE 561 Digital System Design & Synthesis Introduction
1 COE 561 Digital System Design & Synthesis Introduction Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Outline Course Topics Microelectronics Design
More informationGraduate course on FPGA design
History of and programmable logic February 15, 2010 History of and programmable logic History of and programmable logic History of and programmable logic Course planning Lectures Laboration 4 HP for actively
More informationA Hardware / Software Co-Design System using Configurable Computing Technology
A Hardware / Software Co-Design System using Configurable Computing Technology John Schewel Virtual Computer Corporation 6925 Canby Ave #103 Reseda, California, USA 91335 Abstract Virtual Computer Corporation
More informationECE 448 Lecture 15. Overview of Embedded SoC Systems
ECE 448 Lecture 15 Overview of Embedded SoC Systems ECE 448 FPGA and ASIC Design with VHDL George Mason University Required Reading P. Chu, FPGA Prototyping by VHDL Examples Chapter 8, Overview of Embedded
More informationThe Design of Mixed Hardware/Software Systems
The Design of Mixed Hardware/Software Systems Jay K. Adams Synopsys, Inc. 700 East Middlefield Road Mountain View, CA 94043 jka@synopsys.com Donald E. Thomas Deptartment of Electrical and Computer Engineering
More informationDesign Space Exploration Using Parameterized Cores
RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS UNIVERSITY OF WINDSOR Design Space Exploration Using Parameterized Cores Ian D. L. Anderson M.A.Sc. Candidate March 31, 2006 Supervisor: Dr. M. Khalid 1 OUTLINE
More information8-Bit Microcontroller with Flash. Application Note. Controlling FPGA Configuration with a Flash-Based Microcontroller
Controlling FPGA Configuration with a Flash-Based Introduction SRAM-based FPGAs like the Atmel AT6000 series come more and more into use because of the many advantages they offer. Their reconfigurability
More informationOrganic Computing. Dr. rer. nat. Christophe Bobda Prof. Dr. Rolf Wanka Department of Computer Science 12 Hardware-Software-Co-Design
Dr. rer. nat. Christophe Bobda Prof. Dr. Rolf Wanka Department of Computer Science 12 Hardware-Software-Co-Design 1 Reconfigurable Computing Platforms 2 The Von Neumann Computer Principle In 1945, the
More informationFPGA architecture and design technology
CE 435 Embedded Systems Spring 2017 FPGA architecture and design technology Nikos Bellas Computer and Communications Engineering Department University of Thessaly 1 FPGA fabric A generic island-style FPGA
More informationRTL Coding General Concepts
RTL Coding General Concepts Typical Digital System 2 Components of a Digital System Printed circuit board (PCB) Embedded d software microprocessor microcontroller digital signal processor (DSP) ASIC Programmable
More informationMaster of Engineering Preliminary Thesis Proposal For Prototyping Research Results. December 5, 2002
Master of Engineering Preliminary Thesis Proposal For 6.191 Prototyping Research Results December 5, 2002 Cemal Akcaba Massachusetts Institute of Technology Cambridge, MA 02139. Thesis Advisor: Prof. Agarwal
More informationFPGA VHDL Design Flow AES128 Implementation
Sakinder Ali FPGA VHDL Design Flow AES128 Implementation Field Programmable Gate Array Basic idea: two-dimensional array of logic blocks and flip-flops with a means for the user to configure: 1. The interconnection
More informationToday. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses
Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single
More informationECE 747 Digital Signal Processing Architecture. DSP Implementation Architectures
ECE 747 Digital Signal Processing Architecture DSP Implementation Architectures Spring 2006 W. Rhett Davis NC State University W. Rhett Davis NC State University ECE 406 Spring 2006 Slide 1 My Goal Challenge
More informationChapter 5: ASICs Vs. PLDs
Chapter 5: ASICs Vs. PLDs 5.1 Introduction A general definition of the term Application Specific Integrated Circuit (ASIC) is virtually every type of chip that is designed to perform a dedicated task.
More informationISSN: [Bilani* et al.,7(2): February, 2018] Impact Factor: 5.164
IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY A REVIEWARTICLE OF SDRAM DESIGN WITH NECESSARY CRITERIA OF DDR CONTROLLER Sushmita Bilani *1 & Mr. Sujeet Mishra 2 *1 M.Tech Student
More informationHigh Speed Pipelined Architecture for Adaptive Median Filter
Abstract High Speed Pipelined Architecture for Adaptive Median Filter D.Dhanasekaran, and **Dr.K.Boopathy Bagan *Assistant Professor, SVCE, Pennalur,Sriperumbudur-602105. **Professor, Madras Institute
More informationCOMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface
COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface COEN-4710 Computer Hardware Lecture 7 Large and Fast: Exploiting Memory Hierarchy (Chapter 5) Cristinel Ababei Marquette University Department
More informationElectrical Engineering and Computer Sciences (EECS)
University of California, Berkeley 1 Electrical Engineering and Computer Sciences (EECS) Courses EECS 47D Completion of work in Electrical Engineering 16A 1-3 Units Terms offered: Prior to 2007 This course
More informationHardware JIT Compilation for Off-the-Shelf Dynamically Reconfigurable FPGAs
Hardware JIT Compilation for Off-the-Shelf Dynamically Reconfigurable FPGAs Etienne Bergeron, Marc Feeley, and Jean Pierre David DIRO, Université demontréal GRM, École Polytechnique de Montréal {bergeret,feeley}@iro.umontreal.ca,
More informationIntroduction to FPGA Design with Vivado High-Level Synthesis. UG998 (v1.0) July 2, 2013
Introduction to FPGA Design with Vivado High-Level Synthesis Notice of Disclaimer The information disclosed to you hereunder (the Materials ) is provided solely for the selection and use of Xilinx products.
More informationInterfacing a High Speed Crypto Accelerator to an Embedded CPU
Interfacing a High Speed Crypto Accelerator to an Embedded CPU Alireza Hodjat ahodjat @ee.ucla.edu Electrical Engineering Department University of California, Los Angeles Ingrid Verbauwhede ingrid @ee.ucla.edu
More informationECE 4514 Digital Design II. Spring Lecture 22: Design Economics: FPGAs, ASICs, Full Custom
ECE 4514 Digital Design II Lecture 22: Design Economics: FPGAs, ASICs, Full Custom A Tools/Methods Lecture Overview Wows and Woes of scaling The case of the Microprocessor How efficiently does a microprocessor
More informationSynthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool
Synthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool Md. Abdul Latif Sarker, Moon Ho Lee Division of Electronics & Information Engineering Chonbuk National University 664-14 1GA Dekjin-Dong
More informationIntroduction to Modern FPGAs
Introduction to Modern FPGAs Arturo Díaz Pérez Centro de Investigación y de Estudios Avanzados del IPN Departamento de Ingeniería Eléctrica Sección de Computación adiaz@cs.cinvestav.mx Outline Technology
More informationEvolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic
ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:
More informationSoft-Core Embedded Processor-Based Built-In Self- Test of FPGAs: A Case Study
Soft-Core Embedded Processor-Based Built-In Self- Test of FPGAs: A Case Study Bradley F. Dutton, Graduate Student Member, IEEE, and Charles E. Stroud, Fellow, IEEE Dept. of Electrical and Computer Engineering
More informationRun-time reconfiguration for automatic hardware/software partitioning
Run-time reconfiguration for automatic hardware/software partitioning Tom Davidson ELIS department, Ghent University Sint-pietersnieuwstraat, 41 9000, Ghent, Belgium Email: tom.davidson@ugent.be Karel
More informationBoost FPGA Prototype Productivity by 10x
Boost FPGA Prototype Productivity by 10x Introduction Modern ASICs have become massively complex due in part to the growing adoption of system on chip (SoC) development methodologies. With this growing
More informationLSN 6 Programmable Logic Devices
LSN 6 Programmable Logic Devices Department of Engineering Technology LSN 6 What Are PLDs? Functionless devices in base form Require programming to operate The logic function of the device is programmed
More informationA Partitioning Flow for Accelerating Applications in Processor-FPGA Systems
A Partitioning Flow for Accelerating Applications in Processor-FPGA Systems MICHALIS D. GALANIS 1, GREGORY DIMITROULAKOS 2, COSTAS E. GOUTIS 3 VLSI Design Laboratory, Electrical & Computer Engineering
More informationChapter 6 (Lect 3) Counters Continued. Unused States Ring counter. Implementing with Registers Implementing with Counter and Decoder
Chapter 6 (Lect 3) Counters Continued Unused States Ring counter Implementing with Registers Implementing with Counter and Decoder Sequential Logic and Unused States Not all states need to be used Can
More informationProgrammable Logic Devices
Programmable Logic Devices INTRODUCTION A programmable logic device or PLD is an electronic component used to build reconfigurable digital circuits. Unlike a logic gate, which has a fixed function, a PLD
More informationSystems Development Tools for Embedded Systems and SOC s
Systems Development Tools for Embedded Systems and SOC s Óscar R. Ribeiro Departamento de Informática, Universidade do Minho 4710 057 Braga, Portugal oscar.rafael@di.uminho.pt Abstract. A new approach
More informationPricing of Derivatives by Fast, Hardware-Based Monte-Carlo Simulation
Pricing of Derivatives by Fast, Hardware-Based Monte-Carlo Simulation Prof. Dr. Joachim K. Anlauf Universität Bonn Institut für Informatik II Technische Informatik Römerstr. 164 53117 Bonn E-Mail: anlauf@informatik.uni-bonn.de
More informationModeling HDL components for FPGAs in control applications
Modeling HDL components for FPGAs in control applications Mark Corless, Principal Application Engineer, Novi MI 2014 The MathWorks, Inc. 1 Position sensing High resolution voltage modulation Critical diagnostics
More informationThe Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus.
The Embedded computing platform CPU bus. Memory. I/O devices. CPU bus Connects CPU to: memory; devices. Protocol controls communication between entities. Bus protocol Determines who gets to use the bus
More informationEmploying Multi-FPGA Debug Techniques
Employing Multi-FPGA Debug Techniques White Paper Traditional FPGA Debugging Methods Debugging in FPGAs has been difficult since day one. Unlike simulation where designers can see any signal at any time,
More informationThe SOCks Design Platform. Johannes Grad
The SOCks Design Platform Johannes Grad System-on-Chip (SoC) Design Combines all elements of a computer onto a single chip Microprocessor Memory Address- and Databus Periphery Application specific logic
More informationESE532: System-on-a-Chip Architecture. Today. Message. Graph Cycles. Preclass 1. Reminder
ESE532: System-on-a-Chip Architecture Day 8: September 26, 2018 Spatial Computations Today Graph Cycles (from Day 7) Accelerator Pipelines FPGAs Zynq Computational Capacity 1 2 Message Custom accelerators
More informationSP3Q.3. What makes it a good idea to put CRC computation and error-correcting code computation into custom hardware?
Part II CST: SoC D/M: Quick exercises S3-S4 (examples sheet) Feb 2018 (rev a). This sheet contains short exercises for quick revision. Please also look at past exam questions and/or try some of the longer
More informationESE534: Computer Organization. Tabula. Previously. Today. How often is reuse of the same operation applicable?
ESE534: Computer Organization Day 22: April 9, 2012 Time Multiplexing Tabula March 1, 2010 Announced new architecture We would say w=1, c=8 arch. 1 [src: www.tabula.com] 2 Previously Today Saw how to pipeline
More informationSigmaRAM Echo Clocks
SigmaRAM Echo s AN002 Introduction High speed, high throughput cell processing applications require fast access to data. As clock rates increase, the amount of time available to access and register data
More informationINTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)
INTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS) Bill Jason P. Tomas Dept. of Electrical and Computer Engineering University of Nevada Las Vegas FIELD PROGRAMMABLE ARRAYS Dominant digital design
More informationProgrammable Logic Devices UNIT II DIGITAL SYSTEM DESIGN
Programmable Logic Devices UNIT II DIGITAL SYSTEM DESIGN 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 2 Implementation in Sequential Logic 2 PAL Logic Implementation Design Example: BCD to Gray Code Converter A B
More informationDigital Systems Design. System on a Programmable Chip
Digital Systems Design Introduction to System on a Programmable Chip Dr. D. J. Jackson Lecture 11-1 System on a Programmable Chip Generally involves utilization of a large FPGA Large number of logic elements
More informationImplementing the Top Five Control-Path Applications with Low-Cost, Low-Power CPLDs
Implementing the Top Five Control-Path Applications with Low-Cost, Low-Power CPLDs WP-01146-1.2 White Paper Since their introduction in the mid-1980s and across all end markets, CPLDs have been design
More informationFPGA Technology and Industry Experience
FPGA Technology and Industry Experience Guest Lecture at HSLU, Horw (Lucerne) May 24 2012 Oliver Brndler, FPGA Design Center, Enclustra GmbH Silvio Ziegler, FPGA Design Center, Enclustra GmbH Content Enclustra
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Introduction to FPGA design Rakesh Gangarajaiah Rakesh.gangarajaiah@eit.lth.se Slides from Chenxin Zhang and Steffan Malkowsky WWW.FPGA What is FPGA? Field
More informationFPGA Implementation of MIPS RISC Processor
FPGA Implementation of MIPS RISC Processor S. Suresh 1 and R. Ganesh 2 1 CVR College of Engineering/PG Student, Hyderabad, India 2 CVR College of Engineering/ECE Department, Hyderabad, India Abstract The
More informationActel s SX Family of FPGAs: A New Architecture for High-Performance Designs
Actel s SX Family of FPGAs: A New Architecture for High-Performance Designs A Technology Backgrounder Actel Corporation 955 East Arques Avenue Sunnyvale, California 94086 April 20, 1998 Page 2 Actel Corporation
More informationPROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES
PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES. psa. rom. fpga THE WAY THE MODULES ARE PROGRAMMED NETWORKS OF PROGRAMMABLE MODULES EXAMPLES OF USES Programmable
More informationHardware/Software Codesign
Hardware/Software Codesign SS 2016 Prof. Dr. Christian Plessl High-Performance IT Systems group University of Paderborn Version 2.2.0 2016-04-08 how to design a "digital TV set top box" Motivating Example
More informationLong Term Trends for Embedded System Design
Long Term Trends for Embedded System Design Ahmed Amine JERRAYA Laboratoire TIMA, 46 Avenue Félix Viallet, 38031 Grenoble CEDEX, France Email: Ahmed.Jerraya@imag.fr Abstract. An embedded system is an application
More informationParallelized Radix-4 Scalable Montgomery Multipliers
Parallelized Radix-4 Scalable Montgomery Multipliers Nathaniel Pinckney and David Money Harris 1 1 Harvey Mudd College, 301 Platt. Blvd., Claremont, CA, USA e-mail: npinckney@hmc.edu ABSTRACT This paper
More informationSoC Basics Avnet Silica & Enclustra Seminar Getting started with Xilinx Zynq SoC Fribourg, April 26, 2017
1 2 3 4 Introduction - Cool new Stuff Everybody knows, that new technologies are usually driven by application requirements. A nice example for this is, that we developed portable super-computers with
More information