Introduction to Programmable Logic

Slides:



Advertisements
Similar presentations
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
Advertisements

EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
History TTL-logic PAL (Programmable Array Logic)
1 VLSI DESIGN USING VHDL Part II A workshop by Dr. Junaid Ahmed Zubairi.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
FPGAs and VHDL Lecture L12.1. FPGAs and VHDL Field Programmable Gate Arrays (FPGAs) VHDL –2 x 1 MUX –4 x 1 MUX –An Adder –Binary-to-BCD Converter –A Register.
Introduction to VHDL Multiplexers. Introduction to VHDL VHDL is an acronym for VHSIC (Very High Speed Integrated Circuit) Hardware Description Language.
Introduction to VHDL CSCE 496/896: Embedded Systems Witawas Srisa-an.
VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.
Programmable logic and FPGA
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
FPGAs and VHDL Lecture L13.1 Sections 13.1 – 13.3.
General FPGA Architecture Field Programmable Gate Array.
Dr. Konstantinos Tatas ACOE201 – Computer Architecture I – Laboratory Exercises Background and Introduction.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
An Introduction to VHDL Using Altera’s Quartus II IDE Dr. William M. Jones Coastal Carolina University Numbers and Bytes Meeting 20 OCT 2008.
Designing with FPGAs ELEC 418 Advanced Digital Systems Dr. Ron Hayne Images Courtesy of Thomson Engineering.
Electronics in High Energy Physics Introduction to Electronics in HEP Field Programmable Gate Arrays Part 1 based on the lecture of S.Haas.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
VHDL TUTORIAL Preetha Thulasiraman ECE 223 Winter 2007.
Tutorial 1 Combinational Logic Synthesis. Introduction to VHDL VHDL = Very high speed Hardware Description Language VHDL and Verilog are the industry.
J. Christiansen, CERN - EP/MIC
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
VHDL Introduction. V- VHSIC Very High Speed Integrated Circuit H- Hardware D- Description L- Language.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Copyright © 1997 Altera Corporation & 提供 What is VHDL Very high speed integrated Hardware Description Language (VHDL) –is.
CWRU EECS 317 EECS 317 Computer Design LECTURE 1: The VHDL Adder Instructor: Francis G. Wolff Case Western Reserve University.
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
Introduction to FPGA Tools
Tools - LogiBLOX - Chapter 5 slide 1 FPGA Tools Course The LogiBLOX GUI and the Core Generator LogiBLOX L BX.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
CS/EE 3700 : Fundamentals of Digital System Design
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
11 EENG 1920 Introduction to VHDL. 22 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
Apr. 3, 2000Systems Architecture I1 Introduction to VHDL (CS 570) Jeremy R. Johnson Wed. Nov. 8, 2000.
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
Survey of Reconfigurable Logic Technologies
FPGA ( Field programmable gate array ) April 2008 Prepared by : Muhammad Ziyada Muhammad Al tabakh.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
1 Introduction to Engineering Spring 2007 Lecture 19: Digital Tools 3.
1 Introduction to Engineering Fall 2006 Lecture 17: Digital Tools 1.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Introduction to the FPGA and Labs
EET 1131 Unit 4 Programmable Logic Devices
Programmable Logic Devices
Systems Architecture Lab: Introduction to VHDL
LAB #4 Xilinix ISE Foundation Tools VHDL Design Entry “A Tutorial”
Complex Programmable Logic Device (CPLD) Architecture and Its Applications
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
ECE 4110–5110 Digital System Design
An Introduction to FPGA and SOPC Development Board
Electronics for Physicists
FPGA.
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
VHDL 1. ver.7a VHDL1 INTRODUCTION TO VHDL (VERY-HIGH-SPEED-INTEGRATED-CIRCUITS HARDWARE DESCRIPTION LANGUAGE) KH WONG (w2 begins) (Some pictures are.
Week 5, Verilog & Full Adder
VHDL Introduction.
Founded in Silicon Valley in 1984
Electronics for Physicists
Digital Designs – What does it take
Programmable logic and FPGA
VHDL Synthesis for Implementing Digital Designs into FPGAs
(Carry Lookahead Adder)
Presentation transcript:

Introduction to Programmable Logic FYSIKUM Nordic detector school FPGA introduction Introduction to VHDL Implementation design flow Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 FPGA Structure Logic block I/O block Interconnects Digital Systemkonstruktion - 1

FPGA Logic Block (idealized) Register MUX 4-input look up table (LUT) implements combinatorial logic Register optionally stores output of LUT Digital Systemkonstruktion - 1

Field-Programmable Gate Arrays Xilinx Spartan-3 die image. Note the regularity Easily seen is the very regular structure; this is major advantage in scaling. Note also IO buffers and configuration logic on periphery. Not shown is this model is the emerging presence of significant hard IP: hard processors (PPC, ARM) multipliers block memory, so called “diffused memory” multi-gigabit transceivers highly selectable IO: LVDT, multiple voltage standards, etc. Column based datapath components becoming important as DSP application migrate to FPGAs Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Other FPGA features: Dedicated block memories Dual-port static RAM Digital clock management/synthesis Dedicated multipliers Important for digital signal processing "Hard" CPU cores Xilinx: PowerPC, ARM 9 Altera: Nios (Stratix II) Multi-Gbit transceivers Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 For this course: Device: Xilinx FPGA (Spartan 3E) Design language: VHDL Simulation tool: Xilinx iSim Implementation: Xilinx ISE These are specific choices, but…. Overall contents are similar to other environments Not very difficult to transfer skills Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 VHDL introduction VHSIC Hardware Description Language (VHSIC: Very high speed integrated circuit) Both concurrent and sequential operations International standard (1987, 1993, 2002) Pure language definition Large standard, with multiple ways to code the same behavior Digital Systemkonstruktion - 1

Design unit (library unit) Inputs/outputs (entity) In most basic form, defines Inputs/outputs (entity) Function of unit (architecture) Can be instantiated and connected together in higher level design units. Function (architecture) Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 VHDL design unit Package Shared definitions Optional Assign specific design entities or architectures to be used in specific places Configuration Entity Inputs and outputs Architecture Description of design Process Sequential statements Digital Systemkonstruktion - 1

Multiplexer entity library ieee; use ieee.std_logic_1164.all; entity Mux is port( a: in std_logic; b: in std_logic; sel: in std_logic; y: out std_logic ); end Mux; Y SEL A B no semicolon after last port declaration! Port name Direction Type Digital Systemkonstruktion - 1

An architecture (many ways to do this) SEL A B architecture arch3 of Mux is begin y <= a when sel='0' else b; end arch3; Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Complete design unit: -- -- A 2 input multiplexer circuit library ieee; use ieee.std_logic_1164.all; entity Mux is port( a: in std_logic; b: in std_logic; sel: in std_logic; y: out std_logic ); end Mux; architecture arch2 of Mux is begin y <= a when sel='0' else b; end arch2; Y SEL A B Digital Systemkonstruktion - 1

Xilinx design environment (ISE) Project Navigator is now the common front end for all the ISE products, including ISE Alliance. Project Navigator is a robust and easy-to-use GUI driven design management environment that lets you see what files are involved in your design, what stages the design has already gone through, and what steps are left to completion. Project Navigator quickly and easily automates the programmable design flow. ISE 4.2i is the first programmable design software supporting Linux. Using Linux RedHat version 7.2 with the WINE applications layer, customers now have expanded operating system options. ISE 4.2i Linux is available for ISE Foundation and ISE Alliance and includes the command line implementation tools only. Future versions of ISE will include more design tools and native Linux support in 2003. So, how do you use it? Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Create a new project Digital Systemkonstruktion - 1

Select device, design flow Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Create new source Click here Or right-click here for menu Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 New source options Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Initial definitions Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Edit sources Digital Systemkonstruktion - 1

Target to your hardware Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Define constraints In this case, only I/O needs to be declared. More complex designs also need info on timing constraints Digital Systemkonstruktion - 1

User Constraint File (UCF) Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Implement the design ISE follows the design flow up to the selected point. Digital Systemkonstruktion - 1

Digital Systemkonstruktion - 1 Configure the FPGA Digital Systemkonstruktion - 1