PE713 FPGA Based System Design

Similar documents
FPGA Based System Design

Reference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering

ECE380 Digital Logic

2009 Spring CS211 Digital Systems & Lab 1 CHAPTER 3: TECHNOLOGY (PART 2)

Digital Systems Design

Lecture 3, Handouts Page 1. Introduction. EECE 353: Digital Systems Design Lecture 3: Digital Design Flows, Simulation Techniques.

PROGRAMMABLE ASICs. Antifuse SRAM EPROM

Engr354: Digital Logic Circuits

FPGA Circuits. na A simple FPGA model. nfull-adder realization

CHAPTER III THE FPGA IMPLEMENTATION OF PULSE WIDTH MODULATION

Technology Timeline. Transistors ICs (General) SRAMs & DRAMs Microprocessors SPLDs CPLDs ASICs. FPGAs. The Design Warrior s Guide to.

CMOS Digital Logic Design with Verilog. Chapter1 Digital IC Design &Technology

CS302 - Digital Logic Design Glossary By

ECE 172 Digital Systems. Chapter 2 Digital Hardware. Herbert G. Mayer, PSU Status 6/30/2018

CMOS VLSI IC Design. A decent understanding of all tasks required to design and fabricate a chip takes years of experience

EE19D Digital Electronics. Lecture 1: General Introduction

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 2 nd year engineering students

Lecture Perspectives. Administrivia

Lecture 30. Perspectives. Digital Integrated Circuits Perspectives

Memory Basics. historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities

EC 1354-Principles of VLSI Design

WHAT ARE FIELD PROGRAMMABLE. Audible plays called at the line of scrimmage? Signaling for a squeeze bunt in the ninth inning?

MODULE-4 Memory and programmable logic

Design Methodologies. Design Trade-offs. System Design to Hardware. Design Gap. Speed (throughput and clock frequency) Area and

PRESENTATION OF THE PROJECTX-FINAL LEVEL 1.

Combinational Circuits: Multiplexers, Decoders, Programmable Logic Devices

Digital Fundamentals. Introductory Digital Concepts

In this lecture: Lecture 8: ROM & Programmable Logic Devices

A Case Study of Nanoscale FPGA Programmable Switches with Low Power

ECE380 Digital Logic

Digital Design and System Implementation. Overview of Physical Implementations

Design Methodologies. Digital Integrated Circuits A Design Perspective. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

INTRODUCTION TO DIGITAL SYSTEMS

Design Methodologies. Digital Integrated Circuits A Design Perspective. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

Digital Design: An Embedded Systems Approach Using VHDL

APPLICATION OF PROGRAMMABLE LOGIC DEVICES FOR ACQUISITION OF ECG SIGNAL WITH PACEMAKER PULSES 1. HISTORY OF PROGRAMMABLE CIRCUITS

Lecture 12 Memory Circuits. Memory Architecture: Decoders. Semiconductor Memory Classification. Array-Structured Memory Architecture RWM NVRWM ROM

Design and Simulation of Universal Asynchronous Receiver Transmitter on Field Programmable Gate Array Using VHDL

ECE 124 Digital Circuits and Systems Winter 2011 Introduction Calendar Description:

EFFICIENT FPGA IMPLEMENTATION OF 2 ND ORDER DIGITAL CONTROLLERS USING MATLAB/SIMULINK

Digital Circuits II Lecture 6. Lab Demonstration 3 Using Altera Quartus II to Determine Simplified Equations & Entering Truth Table into VHDL

NEW** FPOA** Names associated with this field : Ideal associated characteristics

ERAU the FAA Research CEH Tools Qualification

FPGA & Pulse Width Modulation. Digital Logic. Programing the FPGA 7/23/2015. Time Allotment During the First 14 Weeks of Our Advanced Lab Course

Implementing Logic with the Embedded Array

Topics. FPGA Design EECE 277. Combinational Logic Blocks. From Last Time. Multiplication. Dr. William H. Robinson February 25, 2005

IMPLEMENTATION OF QALU BASED SPWM CONTROLLER THROUGH FPGA. This Chapter presents an implementation of area efficient SPWM

Introduction to CMOS VLSI Design (E158) Lecture 5: Logic

UNIT IV. Logic families can be classified broadly according to the technologies they are built with. The various technologies are listed below.

EMT 251 Introduction to IC Design

1. Introduction. Institute of Microelectronic Systems. Status of Microelectronics Technology. (nm) Core voltage (V) Gate oxide thickness t OX

GENERATION OF PWM PULSES IN VHDL TO DRIVE THREE PHASE INVERTER

Policy-Based RTL Design

PROGRAMMABLE ASIC INTERCONNECT

BEE 2233 Digital Electronics. Chapter 1: Introduction

Imaging serial interface ROM

2 MARK QUESTIONS & ANSWERS UNIT1-MOS TRANSISTOR PRINCIPLE

Digital Logic ircuits Circuits Fundamentals I Fundamentals I

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

ASIC Implementation and Analysis of Extrinsic EHW Based Power and Area Optimised 8-Bit Asynchronous Parallel MAC

Design and synthesis of FPGA for speed control of induction motor

DIGITAL INTEGRATED CIRCUITS A DESIGN PERSPECTIVE 2 N D E D I T I O N

Memory, Latches, & Registers

PROGRAMMABLE ASIC INTERCONNECT

Temperature Monitoring and Fan Control with Platform Manager 2

Preface to Third Edition Deep Submicron Digital IC Design p. 1 Introduction p. 1 Brief History of IC Industry p. 3 Review of Digital Logic Gate

Lecture 1: Digital Systems and VLSI

VLSI IMPLEMENTATION OF MODIFIED DISTRIBUTED ARITHMETIC BASED LOW POWER AND HIGH PERFORMANCE DIGITAL FIR FILTER Dr. S.Satheeskumaran 1 K.

Low Power Design Methods: Design Flows and Kits

Fan in: The number of inputs of a logic gate can handle.

Combinational logic. ! Regular logic: multiplexers, decoders, LUTs and FPGAs. ! Switches, basic logic and truth tables, logic functions

Datorstödd Elektronikkonstruktion

1. The decimal number 62 is represented in hexadecimal (base 16) and binary (base 2) respectively as

Evolutionary Electronics

Field Programmable Gate Array Implementation and Testing of a Minimum-phase Finite Impulse Response Filter

Synthesis of Combinational Logic

EECS150 - Digital Design Lecture 28 Course Wrap Up. Recap 1

EECS 427 Lecture 21: Design for Test (DFT) Reminders

Homework 10 posted just for practice. Office hours next week, schedule TBD. HKN review today. Your feedback is important!

Temperature Monitoring and Fan Control with Platform Manager 2

Disseny físic. Disseny en Standard Cells. Enric Pastor Rosa M. Badia Ramon Canal DM Tardor DM, Tardor

Study of Physical Unclonable Functions at Low Voltage on FPGA

Arria V Timing Optimization Guidelines

Leakage Power Minimization in Deep-Submicron CMOS circuits

Daisy II. By: Steve Rothen EEL5666 Spring 2002

Digital Integrated Circuits Perspectives. Administrivia

June 10, :03 vra23151_ch01 Sheet number 1 Page number 1 black. chapter. Design Concepts. 1. e2 e4, c7 c6

Course Outcome of M.Tech (VLSI Design)

Single Chip FPGA Based Realization of Arbitrary Waveform Generator using Rademacher and Walsh Functions

LOW-POWER SOFTWARE-DEFINED RADIO DESIGN USING FPGAS

Introduction to co-simulation. What is HW-SW co-simulation?

Lecture 1. Tinoosh Mohsenin

Locking VCXOs to 10MHz for the Microwave and mmwave local oscillators.

Lecture Topics ECE 341. Lecture # 4. Decoder. 2-to-4 Decoder Circuit

Design and Implementation of High Speed Carry Select Adder Korrapatti Mohammed Ghouse 1 K.Bala. 2

Digital Logic, Algorithms, and Functions for the CEBAF Upgrade LLRF System Hai Dong, Curt Hovater, John Musson, and Tomasz Plawski

The EPAC Architecture: An Expert Cell Approach to Field Programmable Analog Devices

Very Large Scale Integration (VLSI)

Course Overview. Course Overview

CHAPTER 6 IMPLEMENTATION OF FPGA BASED CASCADED MULTILEVEL INVERTER

Transcription:

PE713 FPGA Based System Design

Why VLSI? Dept. of EEE, Amrita School of Engineering

Why ICs? Dept. of EEE, Amrita School of Engineering

IC Classification ANALOG (OR LINEAR) ICs produce, amplify, or respond to variable voltages include many kinds of amplifiers, timers, oscillators, and voltage regulators. DIGITAL (OR LOGIC) ICs respond to or produce signals having only two voltage levels, high and low Digital ICs include microprocessors, memories, microcomputers Dept. of EEE, Amrita School of Engineering

IC s Dept. of EEE, Amrita School of Engineering

Full Custom ICs Can achieve very high transistor density (transistors per square micron) design time can be very long (multiple months). Involves the creation of a completely new chip, which consists of masks (for the photolithographic manufacturing process) Benefits - Excellent performance, small size, low power

Standard Cell Designer uses a library of standard cells an automatic place and route tool does the layout Transistor density and performance degradation depends on type of design being done. Design time can be much faster than full custom because layout is automatically generated.

Gate Array Designer uses a library of standard cells. The design is mapped onto an array of transistors which is already created on a wafer wafers with transistor arrays can be created ahead of time A routing tool creates the masks for the routing layers and "customizes" the pre-created gate array for the user's design Transistor density can be almost as good as standard cell. Design time advantages are the same as for standard cell.

Semi-custom ICs Flexible as portion of the IC is customized by the user Suitable for specific applications Gate array + standard cell Paves way for application specific ICs (ASIC)

Programmable Logic Devices

Programmable ROM (PROM) N input 2 N x M ROM M output Address: N bits; Output word: M bits ROM contains 2 N words of M bits each The input bits decide the particular word that becomes available on output lines

Logic Diagram of 8x3 PROM Sum of minterms

Combinational Circuit Implementation using PROM I0 I1 I2 F0 F1 F2 0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1 1 1 0 1 0 0 1 1 1 0 1 0 F0 F1 F2

PROM Types Programmable PROM Break links through current pulses Write once, Read multiple times Erasable PROM (EPROM) Program with ultraviolet light Write multiple times, Read multiple times Electrically Erasable PROM (EEPROM)/ Flash Memory Program with electrical signal Write multiple times, Read multiple times

PROM: Advantages and Disadvantages Widely used to implement functions with large number of inputs and outputs For combinational circuits with lots of don t care terms, PROM is a wastage of logic resources

Programmable Logic Array (PLA) x 1 x 2 x n Use to implement circuits in SOP form Input buffers and inverters The connections in the AND plane are programmable x 1 x 1 x n x n P 1 The connections in the OR plane are programmable AND plane P k OR plane f 1 f m

Gate Level Version of PLA x 1 x 2 x 3 f 1 = x 1 x 2 +x 1 x 3 '+x 1 'x 2 'x 3 P 1 Programmable connections OR plane f 2 = x 1 x 2 +x 1 'x 2 'x 3 +x 1 x 3 P 2 P 3 P 4 AND plane f 1 f 2

Customary Schematic of a PLA x 1 x 2 x 3 f 1 = x 1 x 2 +x 1 x 3 '+x 1 'x 2 'x 3 f 2 = x 1 x 2 +x 1 'x 2 'x 3 +x 1 x 3 P 1 P 2 OR plane P 3 P 4 x marks the connections left in place after programming AND plane f 1 f 2

Limitations of PLAs Typical size is 16 inputs, 32 product terms, 8 outputs Each AND gate has large fan-in - this limits the number of inputs that can be provided in a PLA 16 inputs 2 16 = possible input combinations; only 32 permitted (since 32 AND gates) in a typical PLA 32 AND terms permitted large fan-in for OR gates as well This makes PLAs slower and slightly more expensive than some alternatives to be discussed shortly

Programmable Array Logic (PAL) x 1 x 2 x n Also used to implement circuits in SOP form The connections in the AND plane are programmable x 1 x 1 Input buffers and inverters x n x n P 1 fixed connections The connections in the OR plane are NOT programmable AND plane P k OR plane f 1 f m

Example Schematic of a PAL x 1 x 2 x 3 f 1 = x 1 x 2 x 3 '+x 1 'x 2 x 3 f 2 = x 1 'x 2 '+x 1 x 2 x 3 P 1 P 2 f 1 P 3 P 4 f 2 AND plane

Comparing PALs and PLAs PALs have the same limitations as PLAs (small number of allowed AND terms) plus they have a fixed OR plane less flexibility than PLAs PALs are simpler to manufacture, cheaper, and faster (better performance) PALs also often have extra circuitry connected to the output of each OR gate The OR gate plus this circuitry is called a macrocell

Macrocell OR gate from PAL Select 0 1 Enable f 1 Clock D Q Flip-flop back to AND plane

A B C Select Enable f1 Flip-flop D Q MUX Clock AND plane

Macrocell Functions Enable = 0 can be used to allow the output pin for f 1 to be used as an additional input pin to the PAL Enable = 1, Select = 0 is normal for typical PAL operation Select 0 1 Enable f 1 Enable = Select = 1 allows the PAL to synchronize the output changes with a clock pulse Clock back to AND plane D Q The feedback to the AND plane provides for multi-level design

Multi-Level Design with PALs f = A'BC + A'B'C' + ABC' + AB'C = A'g + Ag' where g = BC + B'C' and C = h below A B Sel = 0 En = 0 0 1 h D Q Clock Sel = 0 0 1 En = 1 g D Q Clock Select 0 1 f D Q Clock

SPLD

CPLD Interconnection of several PLD blocks with Programmable interconnect on a single chip Logic blocks executes sum-of-product expressions and stores the results in micro-cell registers Programmable interconnects route signals to and from logic blocks

Programmable Interconnect CPLD Logic Block Logic Block I/O I/O Logic Block Logic Block

FPGA Programmable Logic Blocks Implement combinational & sequential logic Programmable Interconnect Wires to connect inputs and outputs to logic blocks Programmable I/O blocks Logic blocks at the periphery for external connections

Structure of FPGA

FPGA Fabric IOB IOB IOB LE LE LE interconnect LE LE LE LE LE LE CLB: combinational logic block = logic element (LE). LUT: Lookup table = SRAM used for truth table. I/O block (IOB): I/O pin + associated logic and electronics.

FPGA Fabric Look-up table with N-inputs can be used to implement any combinational function of N-inputs LUT is programmed with truth table

FPGA Fabric

LUT 3-input LUT Based on Multiplexers LUT entries stored in configuration memory cells

FPGA Fabric (contd) LE LE LE LE LE LE LE LE LE

Xilinx Spartan-II CLB Each CLB has two identical slices. Slice has two logic cells: LUT. Carry/control logic. Registers.

FPGA Programming FPGAs implement multi-level logic Need both programmable logic blocks and programmable interconnect Combination of logic and interconnect is fabric Microprocessor is a stored-program computer

Role of FPGA Microprocessors used in variety of environments Rely on software to implement functions Generally slower and more power-hungry than custom chips When FPGAs? Design economics Shortest time to market Lowest NRE cost Highest unit cost Make quick grab for market share Same FPGA reused in several designs

FPGAs and VLSI FPGAs are standard parts: Pre-manufactured. Don t worry (much) about physical design. Custom silicon: Tailored to your application. Generally lower power consumption.

Standard parts vs. custom Do you build your system with an FPGA or with custom silicon? FPGAs have shorter design cycle. FPGAs have no manufacturing delay. FPGAs reduce inventory. FPGAs are slower, larger, more power-hungry.

FPGA Advantages Faster time-to-market. Simpler design cycle. More predictable project cycle. Field Reprogramability. Reusability. Good for prototyping. Applicable for lower speed, lower complexity and lower volume designs.

FPGA Disadvantages FPGA consumes more power. Limits Design Capability. Not suitable for volumes of production.

Goals and Techniques Performance Logic rate Power/energy Design time Design cost FPGA tools less expensive than custom VLSI tools Manufacturing cost

Design Challenges Multiple levels of abstraction Power consumption Short design time

FPGA Abstractions English Executable program Sequential machines Logic gates transistors rectangles specification behavior registertransfer logic circuit layout

Methodology Hardware Description logic (HDL) ABEL CUPL PALASM VHDL VerilogHDL

Design process (1) Design and implement a simple unit permitting to speed up encryption with RC5-similar cipher with fixed key set on 8031 microcontroller. Unlike in the experiment 5, this time your unit has to be able to perform an encryption algorithm by itself, executing 32 rounds.. Specification (Lab Experiments) Library IEEE; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity RC5_core is port( clock, reset, encr_decr: in std_logic; data_input: in std_logic_vector(31 downto 0); data_output: out std_logic_vector(31 downto 0); out_full: in std_logic; key_input: in std_logic_vector(31 downto 0); key_read: out std_logic; ); end AES_core; VHDL description (Your Source Files) Functional simulation Synthesis Post-synthesis simulation 49

Design process (2) Implementation Timing simulation Configuration On chip testing 50

Major FPGA Vendors SRAM-based FPGAs Xilinx, Inc Altera Corp. Atmel Lattice Semiconductor Share 80% of the market Flash & Antifuse FPGAs Actel Corp. Quick logic Corp.

FPGA Vendors and Device families Xilinx Spartan Virtex Kintex Artix Altera Stratix Cyclone MAX 3000/7000 CPLD MAX-II

Xilinx Families

Altera Families

Simulation and Synthesis Tools 55

Verilog HDL

Verilog Automated Integrated Design Systems (Gateway Design Automation) in 1986 Initially a simulation language - more complete and easier to use than its predecessors Simulation, Documentation and Synthesis Synopsys introduced synthesis from Verilog in 1987 Event-driven simulation Loosely typed language Hardware concurrency

Design Flow

Design Methodology Top-down Design Methodology Bottom-up Design Methodology

Design Abstraction Hierarchy

Design Abstraction Levels Switch level Gate level Dataflow level Behavioral or algorithmic level

Components of Simulation Stimulus block Generating inputs to CUD 8 Circuit Under Design (CUD) 4 Checking outputs of CUD Test bench