Hardware Synthesis. References

Similar documents
Digitaalsüsteemide disain

Hardware Synthesis. Midia Reshadi. CE Department Science and research branch of Islamic Azad University

Programmable Logic Devices

2/14/2016. Hardware Synthesis. Midia Reshadi. CE Department. Entities, Architectures, and Coding.

Tutorial on Simulation using Aldec Active-HDL Ver 1.0

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

VHDL. Chapter 1 Introduction to VHDL. Course Objectives Affected. Outline

Field Programmable Gate Array

Lecture 2 Hardware Description Language (HDL): VHSIC HDL (VHDL)

CS211 Digital Systems/Lab. Introduction to VHDL. Hyotaek Shim, Computer Architecture Laboratory

Digital Design Using VHDL Using Xilinx s Tool for Synthesis and ModelSim for Verification

Introduction to Verilog

FPGA Design Flow 1. All About FPGA

CCE 3202 Advanced Digital System Design

Experiment 8 Introduction to VHDL

LSN 1 Digital Design Flow for PLDs

01 1 Electronic Design Automation (EDA) the correctness, testability, and compliance of a design is checked by software

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 1

What is Verilog HDL? Lecture 1: Verilog HDL Introduction. Basic Design Methodology. What is VHDL? Requirements

Design Progression With VHDL Helps Accelerate The Digital System Designs

C-Based Hardware Design

LSN 6 Programmable Logic Devices

Board-Data Processing. VHDL Exercises. Exercise 1: Basics of VHDL Programming. Stages of the Development process using FPGA s in Xilinx ISE.

Chapter 13 Programmable Logic Device Architectures

EE595. Part VIII Overall Concept on VHDL. EE 595 EDA / ASIC Design Lab

CCE 3202 Advanced Digital System Design

Chapter 2 Basic Logic Circuits and VHDL Description

ECE 331 Digital System Design

101-1 Under-Graduate Project Digital IC Design Flow

Lab 1 Modular Design and Testbench Simulation ENGIN 341 Advanced Digital Design University of Massachusetts Boston

Tutorial on VHDL and Verilog Applications

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)

Hardware Description Language VHDL (1) Introduction

FPGA Design Flow. - from HDL to physical implementation - Victor Andrei. Kirchhoff-Institut für Physik (KIP) Ruprecht-Karls-Universität Heidelberg

Abi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University

Concurrent Signal Assignment Statements (CSAs)

An Introduction to Programmable Logic

Introduction to Field Programmable Gate Arrays

Chapter 2 Getting Hands on Altera Quartus II Software

Outline. CPE/EE 422/522 Advanced Logic Design L05. Review: General Model of Moore Sequential Machine. Review: Mealy Sequential Networks.

ECE U530 Digital Hardware Synthesis. Course Accounts and Tools

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

ECE4401 / CSE3350 ECE280 / CSE280 Digital Design Laboratory

ECE 545 Lecture 4. Simple Testbenches. George Mason University

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

TOPIC : Verilog Synthesis examples. Module 4.3 : Verilog synthesis

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems

EEL 4783: Hardware/Software Co-design with FPGAs

Lecture 1: Introduction Course arrangements Recap of basic digital design concepts EDA tool demonstration

CHAPTER 2 INTRODUCTION TO VERILOG 2.1 COMPUTER-AIDED DESIGN. Copyrighted material; Do not copy or circulate. Page 46

Test Benches - Module 8

Hardware Description Languages (HDLs) Verilog

INTRODUCTION TO VHDL. Lecture 5 & 6 Dr. Tayab Din Memon Assistant Professor Department of Electronic Engineering, MUET

CSCI Lab 3. VHDL Syntax. Due: Tuesday, week6 Submit to: \\fs2\csci250\lab-3\

CHAPTER 3 METHODOLOGY. 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier

01-1 Electronic Design Automation (EDA) The use of software to automate electronic (digital and analog) design.

Design Methodologies and Tools. Full-Custom Design

CMPT 250: Computer Architecture. Using LogicWorks 5. Tutorial Part 1. Somsubhra Sharangi

DESIGN STRATEGIES & TOOLS UTILIZED

Digital Systems Design

ACS College of Engineering. Department of Biomedical Engineering. Logic Design Lab pre lab questions ( ) Cycle-1

VHDL Testbench. Test Bench Syntax. VHDL Testbench Tutorial 1. Contents

CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

Overview of Digital Design with Verilog HDL 1

Experiment 3. Digital Circuit Prototyping Using FPGAs

ANADOLU UNIVERSITY DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING. EEM Digital Systems II

EE 231 Fall EE 231 Lab 2

PART I BASIC DIGITAL CIRCUITS

V1 - VHDL Language. FPGA Programming with VHDL and Simulation (through the training Xilinx, Lattice or Actel FPGA are targeted) Objectives

Programmable Logic Devices UNIT II DIGITAL SYSTEM DESIGN

A Brief Introduction to Verilog Hardware Definition Language (HDL)

Combinational Logic Design with Verilog. ECE 152A Winter 2012

PACKAGE. Package syntax: PACKAGE identifier IS...item declaration... END PACKAGE [identifier]

Introduction to Verilog HDL

FPGA Based Digital Design Using Verilog HDL

UNIT I Introduction to VHDL VHDL: - V -VHSIC, H - Hardware, D - Description, L Language Fundamental section of a basic VHDL code Library :

CONTENTS CHAPTER 1: NUMBER SYSTEM. Foreword...(vii) Preface... (ix) Acknowledgement... (xi) About the Author...(xxiii)

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

ECE 459/559 Secure & Trustworthy Computer Hardware Design

VHDL Quick Start. Edward Gatt

FPGA briefing Part II FPGA development DMW: FPGA development DMW:

Digital Systems Design

Programmable Logic Devices HDL-Based Design Flows CMPE 415

Chapter 5: ASICs Vs. PLDs

FPGA Design Tutorial

RTL Coding General Concepts

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS

Follow-up question: now, comment on what each of these acronyms actually means, going beyond a mere recitation of the definition.

TKT-1212 Digitaalijärjestelmien toteutus. Lecture 7: VHDL Testbenches Ari Kulmala, Erno Salminen 2008

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic

PINE TRAINING ACADEMY

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design

תכן חומרה בשפת VERILOG הפקולטה להנדסה

CMSC 611: Advanced Computer Architecture

Don t expect to be able to write and debug your code during the lab session.

ENGIN 241 Digital Systems with Lab

Introduction to VHDL. Module #5 Digilent Inc. Course

Transcription:

Hardware Synthesis MidiaReshadi CE Department Science and research branch of Islamic Azad University Email: ce.srbiau@gmail.com 1 References 2 1

Chapter 1 Digital Design Using VHDL and PLDs 3 Some Definitions Hardware Description Languages (HDLs) VHDL and Verilog HDLs EDA Software Tools Programmable Logic Devices (PLDs) 4 2

VHDL/PLD Design Flow 5 Half-Adder Requirements and Specification A natural language requirements definition We need to be able to add two one-bit binary numbers 6 3

Design Description sum = a b + a b carry_out= a b 7 VHDL Editor Notepad++ Other definitions Keywords and comments 8 4

Other definitions Read from the text book: Verification Testbench UUT 9 Testbench library ieee; use ieee.std_logic_1164.all; entity testbenchis end testbench; architecture behavior of testbenchis -- Declare signals to assign values to and to observe signal a_tb, b_tb, sum_tb, carry_out_tb : std_logic; begin -- Create an instance of the circuit to be tested uut: entity half_adderport map(a => a_tb, b => b_tb, sum => sum_tb, carry_out => carry_out_tb); -- Define a process to apply input stimulus and test outputs tb: process constant period: time := 20 ns; begin -- Apply every possible input combination a_tb <= '0'; --apply input combination 00 and check outputs b_tb<= '0'; wait for period; 10 5

assert ((sum_tb= '0') and (carry_out_tb= '0')) report "test failed for input combination 00" severity error; a_tb <= '0'; --apply input combination 01 and check outputs b_tb <= '1'; wait for period; assert ((sum_tb= '1') and (carry_out_tb= '0')) report "test failed for input combination 01" severity error; a_tb <= '1'; --apply input combination 10 and check outputs b_tb<= '0'; wait for period; assert ((sum_tb= '1') and (carry_out_tb= '0')) report "test failed for input combination 10" severity error; a_tb <= '1'; --apply input combination 11 and check outputs b_tb<= '1'; wait for period; assert ((sum_tb = '0') and (carry_out_tb = '1')) report "test failed for input combination 11" severity error; wait; -- indefinitely suspend process end process; end; 11 Functional Simulation 12 6

13 FUNCTIONAL (BEHAVIORAL) SIMULAT ION Waveforms from the functional simulation Debugging Single step through source code statements Set breakpoints on source code statements Set breakpoints on signal or variable changes in value Monitor (watch) signal and variable values 14 7

ICs fixed-function IC ASIC programmable logic devices (PLDs) Simple PLDs (SPLDs) complex PLDs (CPLDs) Field programmable gate arrays (FPGAs) Logic Capacity (two-input NAND) SPLD 500 gates CPLD 60,000 FPGA 10,000 8,000,000 and now >8,000,000 15 A SPLD logic diagram Concepts: AND/OR Arrays Buffered Inputs Product Line Programmable Interconnects Sum Line Programmable Array Logic (PAL) Halfadder unprogrammedand programmed 16 8

Output Logic Macrocells (OLMCs) 17 Output Logic Macrocells (OLMCs) CombinationalMacrocell Output S0 and S1 Registered MacrocellOutput D flip flop 18 9

The 22V10 SPLD 19 The 22V10 SPLD 20 10

Logic Synthesis area (number of gates) number of gate level Synthesizer synthesize logic behaves identically to the simulated behavior of the design description. 21 post-synthesis simulation 22 11

Language synthesis Gate-Level Logic Optimization: algorithms Technology mapping RTL view of half-adder synthesized logic from synthesis 23 Gate-Level Logic Technology dependent view of half-adder synthesized logic from synthesis 24 12

Synthesizer Output VHDL netlist Technology dependent gate-level netlist --------- Netlist a textual representation of the interconnection of logic elements. EDIF Netlist Format EDIF (Electronic Data Interchange Format) a standard format for transferring design information between EDA tools. 25 PLACE-AND-ROUTE AND TIMING SIMULATION Place-and-Route Operations A pace-and-route (or fitter) tool Pin Assignments User-Defined Attributes Place-and-Route Tool Outputs a chip report a configuration file a VHDL timing model 26 13

timing simulation portion 27 PLACE-AND-ROUTE AND TIMING SIMULATION Place-and-Route Tool Outputs a chip report a configuration file a VHDL timing model 28 14

A chip report 29 Timing (Post-Route) Simulation postroute, post-fit, or post-implementation simulations, 30 15

Design Flow Manager AldecActive-HDL Design Flow Manager. 31 PROGRAMMING AND VERIFYING A TARGET PLD JEDEC file (programming file or fuse map) The configuration file generated by the placeand-route tool Device Programmer connecting to a host computer In-System Programming Programming placing on a printed circuit board Concept: intellectual property (IP) 32 16

Questions? MidiaReshadi 33 17