קורס VHDL for High Performance. VHDL

Similar documents
VHDL for Synthesis. Course Description. Course Duration. Goals

Verilog for High Performance

קורס SystemVerilog Essentials Simulation & Synthesis.. SystemVerilog

FPGA for Software Engineers

VHDL Essentials Simulation & Synthesis

Verilog Essentials Simulation & Synthesis

Designing with ALTERA SoC

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

FSM Components. FSM Description. HDL Coding Methods. Chapter 7: HDL Coding Techniques

ALTERA FPGA Design Using Verilog

VHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad ELECTRONICS AND COMMUNICATIONS ENGINEERING

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

MLR Institute of Technology

The University of Alabama in Huntsville ECE Department CPE Midterm Exam February 26, 2003

VHDL: RTL Synthesis Basics. 1 of 59

: : (91-44) (Office) (91-44) (Residence)

VHDL Modeling Behavior from Synthesis Perspective -Part B - EL 310 Erkay Savaş Sabancı University

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

Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for best synthesis. Spring 2007 Lec #8 -- HW Synthesis 1

EECS150 - Digital Design Lecture 10 Logic Synthesis

RTL HARDWARE DESIGN USING VHDL. Coding for Efficiency, Portability, and Scalability. PONG P. CHU Cleveland State University

Digital System Design with SystemVerilog

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

Verilog Sequential Logic. Verilog for Synthesis Rev C (module 3 and 4)

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

Lecture 12 VHDL Synthesis

EEL 4783: HDL in Digital System Design

St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad

Logic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis

EECS150 - Digital Design Lecture 10 Logic Synthesis

XST User Guide

LAB 1: Combinational Logic: Designing and Simulation of Arithmetic Logic Unit ALU using VHDL

ALTERA FPGAs Architecture & Design

EEL 4783: HDL in Digital System Design

University of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018

Best Practices for Incremental Compilation Partitions and Floorplan Assignments

CSE140L: Components and Design

Synthesis of Combinational and Sequential Circuits with Verilog

Lecture #1: Introduction

VHDL And Synthesis Review

Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

VHDL simulation and synthesis

Control and Datapath 8

Lab 3. Advanced VHDL

Advanced FPGA Design. Jan Pospíšil, CERN BE-BI-BP ISOTDAQ 2018, Vienna

Synthesis of Language Constructs. 5/10/04 & 5/13/04 Hardware Description Languages and Synthesis

HDL Coding Style Xilinx, Inc. All Rights Reserved

Writing Circuit Descriptions 8

Hardware Description Language VHDL (1) Introduction

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

World Class Verilog & SystemVerilog Training

CSE140L: Components and Design Techniques for Digital Systems Lab

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto

DESCRIPTION OF DIGITAL CIRCUITS USING VHDL

Laboratory Exercise 3 Davide Rossi DEI University of Bologna AA

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems

FPGA BASED SYSTEM DESIGN. Dr. Tayab Din Memon Lecture 9 & 10 : Combinational and Sequential Logic

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations

Speaker: Kayting Adviser: Prof. An-Yeu Wu Date: 2009/11/23

Finite State Machines (FSM) Description in VHDL. Review and Synthesis

EEL 4783: HDL in Digital System Design

Luleå University of Technology Kurskod SMD152 Datum Skrivtid

LeonardoSpectrum & Quartus II Design Methodology

10 Writing Circuit Descriptions

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

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

Synthesis from VHDL. Krzysztof Kuchcinski Department of Computer Science Lund Institute of Technology Sweden

Sequential Circuit Design: Principle

Assignment. Last time. Last time. ECE 4514 Digital Design II. Back to the big picture. Back to the big picture

Verilog for Synthesis Ing. Pullini Antonio

Logic Optimization Techniques for Multiplexers

Used to perform operations many times. See previous Parallel to Serial Example

COPYRIGHTED MATERIAL INDEX

Verilog introduction. Embedded and Ambient Systems Lab

Chapter 2 Basic Logic Circuits and VHDL Description

Lecture 32: SystemVerilog

CprE 583 Reconfigurable Computing

ECE 4514 Digital Design II. Spring Lecture 15: FSM-based Control

Design Guidelines for Optimal Results in High-Density FPGAs

Laboratory Exercise 7

Lecture 9. VHDL, part IV. Hierarchical and parameterized design. Section 1 HIERARCHICAL DESIGN

Register Transfer Level in Verilog: Part I

Digital Design with SystemVerilog

Synthesis Options FPGA and ASIC Technology Comparison - 1

Topics. Midterm Finish Chapter 7

(ii) Simplify and implement the following SOP function using NOR gates:

HDLs and SystemVerilog. Digital Computer Design

Synthesizable Verilog

Advanced Synthesis Techniques

Creating Safe State Machines

Sequential Logic Synthesis

ENGN1640: Design of Computing Systems Topic 02: Design/Lab Foundations

Topics. Midterm Finish Chapter 7

EITF35: Introduction to Structured VLSI Design

3 Designing Digital Systems with Algorithmic State Machine Charts

CprE 583 Reconfigurable Computing

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

FPGA: FIELD PROGRAMMABLE GATE ARRAY Verilog: a hardware description language. Reference: [1]

EITF35: Introduction to Structured VLSI Design

Transcription:

קורס VHDL for High Performance תיאור הקורס קורסזהמספקאתכלהידע התיאורטיוהמעשילכתיבתקודHDL. VHDL לסינתזה בעזרת שפת הסטנדרט הקורסמעמיקמאודומלמדאת הדרךהיעילהלכתיבתקודVHDL בכדילקבלאתמימושתכןהלוגי המדויק. הקורסמשלב 50% תיאוריהו- 50% עבודהמעשיתבכלמפגש. המעבדותמכסותאתכלהחומר התאורטיומשלבות חשיבהותכנוןדיגיטאלימעשי. הקורסמשדרגגםמהנדסים עםהרבהשנותניסיוןבתחום. הקורסמכסהאתתהליךהסינתזהבמלואוהחלמהמתודולוגיה, כליהפיתוח, הכנסת,CONSTRAINTS מימושכלמבנה VHDL בצורהאופטימאלית, הבנתהבעיותעםסגנוןכתיבהלא מדויק, הבדליםבין סימולציהלפניואחריסינתזה, ניתוח מסלוליםקריטיים, קריאה וניתוחדו"חות. בנוסףהקורסמעמיקבכתיבת קודיעיללחיסכוןבמקום, הגדלתהתדר, תכנוןלהספקנמוך, בעיות שלSKEW, עבודהעםIP חיצוניים,שימושב- ATTRIBUTES, מימוש מכונותמצביםעםאמינותגבוהה אולתדרגבוה, פתרוןבעיות.FANOUT אורך הקורס 5 ימים (אופציהל- 6 ימיםעםעבודהמעשיתעל (ALTERA DE2-115 EVM בסיום הקורס מטרות שיושגו הכרתתהליךהסינתזהוההבדלבין כליפיתוחשונים כתיבהמדויקתשלמעגלים קומבינטוריםומעגליםעםשעון תכנוןלסינתזהשלפרויקטמרובהקבצים הכרהוהכנסתאילוצים (CONSTRAINTS) הכרתהבעיותבכתיבהלאמדויקת, בעיותבסימולציה אחריסינתזה תכנוןיעיל לחיסכוןבמקוםאולתדרגבוה עבודהעם IP ושילובובתהליךהסינתזה הפקהוניתוחדו"חות, זיהויותיקוןבעיותשל TIMING.1.2.3.4.5.6.7.8 אוכלוסיית היעד מהנדסיחומרה אותוכנההעובדיםבפיתוח FPGA ומעונייניםלשדרגאתיכולותיהם, להכיראת מגבלותכליהסינתזה, להביןטוביותר כיצדלהימנעמתקלותוכיצדלכתוב קודיעיללסינתזה.

כלי פיתוח בקורס סימולטור HDL) (Modelsim or Active סינטיסייזר Pro) (Quartus II integrated synthesis, Precision or Synplify לוחפיתוחשלחברתALTERA (אופציונאליבעלותנוספת).1.2.3 תכנית הלימוד Introduction to Synthesis Day #1 o The synthesis process Technology library Constraint HDL files Compiler Mapping Generated Netlist o Hardware inference versus hardware instantiation o Simulation versus Synthesis Concurrent Signal Assignment Synthesis o General guidelines Data types Initialization of signals Operand length o Inference from declarations Integer State machine std_logic_vector Other data types o Inference from Z value tri-state buffer Bi-Directional I/O tri-state MUX tri-state buffer bus o Inference from simple concurrent signal assignment Logical operator

RTL and Technology view analysis Using synthesizer attributes Closed feedback loop problem o Inference from conditional signal assignments WHEN-ELSE synthesis LUT equation analysis UNAFFECTED key word LATCH problem Don t care in synthesis std_match function WITH-SELECT synthesis o Inference from arithmetic and relational operators Integer versus REAL Arithmetic operators: +, -, *, /, abs, ** Relational operators: >, <, =, /=, >=, <= Constants in arithmetic and relational operators o Simulation versus synthesis behavior and synthesis guidelines Operator Sharing o Derivation of efficient HDL description o Reducing circuit size o Operator sharing using VHDL description o Operator sharing using synthesizer GUI options o Analyzing area and frequency o Tradeoff analysis o Complex operator sharing and synthesis tools limitations

Day #2 Sequential Statements Synthesis o Inference from within processes introduction o General guidelines Using variables Case versus IF-ELSE Combinational sensitivity list Sequential sensitivity list o Inference from simple assignment statements Signals versus Variables synthesis o Inference from IF-THEN-ELSE and IF-THEN-ELSIF statements Priority Latch problem Full versus partial sensitivity list Combinational versus sequential If statements Variables versus Signals synthesis Operator sharing within process Nested IF statements synthesis Analyzing results on different synthesizers o Inference from Case statements When-Others statement synthesis Combinational versus sequential sensitivity list Null key word Latch problem Don t care in Case statements o Inference from loop statements Serial loop versus parallel loop synthesis Loop index FOR loop versus while and simple loop synthesis Variables versus Signals in loop synthesis o Combinational circuit design examples Gray code incrementor Programmable priority encoder Signed addition with status Combinational adder based multiplier Hamming distance circuit

Day #3 Sequential Statements Synthesis (continue) o Incomplete Sensitivity List Bad versus good coding style, simulation pre and post synthesis o Inference using Variables Versus Signals variables and signals in combinational processes, variables and signals in sequential processes, when variable becomes register, analyzing synthesis warnings, debugging variables in post synthesis simulation o Synchronous Circuits Inference latch versus flip-flop inference Synchronous and asynchronous reset Load and enable signals o Inference from WAIT Statements Combinational WAIT processes Sequential WAIT processes Non synthesizable WAIT statements Variables versus signals in WAIT statements Synchronous reset in WAIT statements Finite State Machine Synthesis o State machine structure (Mealy and Moore block diagram) o State encoding (Auto, one-hot, binary, Johnson, two-hot, Gray, User specific) o State machine implementation in VHDL (one, two or three processes) o Bad coding style for state machine o Specifying encoding style in VHDL and in synthesizer tool o Analyzing encoding style area and performance o High reliability safe state machines using attributes, handling illegal states

Day #4 Timing Analysis of a Synchronous Sequential Circuits o Introduction to timing constraints and synchronous design techniques o Synchronized versus unsynchronized I/O o Setup time violation and maximal clock rate o Synthesis static analysis formula o Hold time violation o Output related timing considerations o Input related timing considerations o Poor design practices and their remedies Misuse of asynchronous signals Misuse of gated clock Misuse of derived clocks Global clock Clock skew o Analyzing critical paths in details o Synthesis static timing analysis versus Place & Route static timing analysis o Fanout and long combinational chain timing problems o Using PLL in the system o Physical Synthesis versus logical synthesis Day #5 Synthesis of Large Projects o Synthesis of Package & Package Body o Synthesis of functions & procedures o Reuse methodology o Synthesis of IEEE packages Integrating IP Core o IP core generation and integration into VHDL code o IP black box constraints Maximize Clock Rate

o Introduction to pipeline o Latency and throughput o Pipelined combinational circuits o Pipelining considerations o Pipeline balancing o Effectiveness of pipeline o Adding a pipeline in VHDL o Analyze clock rate in pipelined design o Complex pipeline circuits o Retiming Day #6 (optional) Practical exercises on ALTERA EVM o Description of evaluation board main components o Programmer configuration o Seven segment and LED exercises o Counters, PLL,clock switch on the fly o External memory interface o Timing analysis with TimeQuest o Place & Route process o Pins configuration