EET 252 Unit 5 Programmable Logic: FPGAs & HDLs  Read Floyd, Sections 11-5 to 11-10.  Study Unit 5 e-Lesson.  Do Lab #5.  Lab #5a due next week. 

Slides:



Advertisements
Similar presentations
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals with PLD Programming.
Advertisements

FPGA (Field Programmable Gate Array)
Survey of Reconfigurable Logic Technologies
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.
Programmable Logic Devices
PLD Technology Basics. Basic PAL Architecture DQ Q CLK OE Fuse.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Digital Fundamentals Floyd Chapter 4 Tenth Edition
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
TAP (Test Access Port) JTAG course June 2006 Avraham Pinto.
ECE 331 – Digital System Design Tristate Buffers, Read-Only Memories and Programmable Logic Devices (Lecture #16) The slides included herein were taken.
EET 1131 Unit 4 Programmable Logic Devices  Read Kleitz, Chapter 4.  Homework #4 and Lab #4 due next week.  Quiz next week.
Programmable Array Logic (PAL) Fixed OR array programmable AND array Fixed OR array programmable AND array Easy to program Easy to program Poor flexibility.
Digital Fundamentals with PLD Programming Floyd Chapter 4
Figure 1–1 Graph of an analog quantity (temperature versus time). Thomas L. Floyd Digital Fundamentals, 9e Copyright ©2006 by Pearson Education, Inc. Upper.
Figure 5–1 An example of AND-OR logic. Open file F05-01 to verify the operation. Thomas L. Floyd Digital Fundamentals, 9e Copyright ©2006 by Pearson Education,
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
CPLD 1.1 ©Paul R. Godin Last Mod: Dec 2013 gmail.com.
EET 252 Unit 4 Programmable Logic: SPLDs & CPLDs  Read Floyd, Sections 11-1 to  Study Unit 4 e-Lesson.  Do Lab #4.  Homework #4 and Lab #4 due.
EE4OI4 Engineering Design Programmable Logic Technology.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
Section II Basic PLD Architecture. Section II Agenda  Basic PLD Architecture —XC9500 and XC4000 Hardware Architectures —Foundation and Alliance Series.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
PROGRAMMABLE LOGIC DEVICES (PLD)
CPLD (Complex Programmable Logic Device)
Memory and Programmable Logic Memory device: Device to which binary information is transferred for storage, and from which information is available for.
J. Christiansen, CERN - EP/MIC
Galen SasakiEE 260 University of Hawaii1 Electronic Design Automation (EDA) EE 260 University of Hawaii.
Programmable Logic Devices
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
Sept. 2005EE37E Adv. Digital Electronics Lesson 1 CPLDs and FPGAs: Technology and Design Features.
0/13 Introduction to Programmable Logic Devices Aleksandra Kovacevic Veljko Milutinovic
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
Basic Sequential Components CT101 – Computing Systems Organization.
Introduction to Chapter 3  Now that we understand the concept of binary numbers, we will study ways of describing how systems using binary logic levels.
Floyd Digital Fundamentals, 9/e Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights reserved. Slide 1 Digital Fundamentals.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Pp244 In Sum-of-Products (SOP) form, basic.
M.Mohajjel. Why? TTM (Time-to-market) Prototyping Reconfigurable and Custom Computing 2Digital System Design.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
Programmable Logic Device Architectures
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Binary Numbers For digital systems, the.
1 Multiplexers (Data Selectors) A multiplexer (MUX) is a device that allows several low-speed signals to be sent over one high-speed output line. “Select.
Programmable Logic Devices. Principle of Operation: Example: X = A.B + A’.B’ requires that fuses f1 and f4 to be “blown”.
PLDS Mohammed Anvar P.K AP/ECE Al-Ameen Engineering College.
Delivered by.. Love Jain p08ec907. Design Styles  Full-custom  Cell-based  Gate array  Programmable logic Field programmable gate array (FPGA)
VHDL From Ch. 5 Hardware Description Languages. History 1980’s Schematics 1990’s Hardware Description Languages –Increased due to the use of Programming.
Thinning Lines Between Software and Hardware Programmable Logic Devices Adam Foust.
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
Copyright ©2009 by Pearson Higher Education, Inc. Upper Saddle River, New Jersey All rights reserved. Digital Fundamentals, Tenth Edition Thomas.
This chapter in the book includes: Objectives Study Guide
EET 1131 Unit 4 Programmable Logic Devices
ETE Digital Electronics
Sequential Programmable Devices
This chapter in the book includes: Objectives Study Guide
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
Chapter 13 – Programmable Logic Device Architectures
Digital Fundamentals Tenth Edition Floyd Chapter 11.
Digital Fundamentals Floyd Chapter 4 Tenth Edition
EET 1131 Unit 4 Programmable Logic Devices
"Computer Design" by Sunggu Lee
EET 1131 Unit 4 Programmable Logic Devices
Presentation transcript:

EET 252 Unit 5 Programmable Logic: FPGAs & HDLs  Read Floyd, Sections 11-5 to  Study Unit 5 e-Lesson.  Do Lab #5.  Lab #5a due next week.  Homework #5 and Lab #5b due in two weeks.  Midterm exam next week.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Review SPLD: (Simple PLDs) are the earliest type of array logic used for fixed functions and smaller circuits with a limited number of gates. (The PAL and GAL are both SPLDs). CPLD: (Complex PLDs) are multiple SPLDs arrays and inter- connection arrays on a single chip. FPGA: (Field Programmable Gate Array) are a more flexible arrangement than CPLDs, with much larger capacity. Programmable Logic Devices (PLDs) are ICs with a large number of gates and flip flops that can be configured to perform a specific logic function or perform the logic for a complex circuit. Major types of PLDs are:

FPGAs compared to CPLDs CPLDsFPGAs Based on programmable AND array and fixed OR array. Based on look-up table (LUT), which is basically a truth table. (Results in higher density.) Usually EEPROM technology, so non- volatile. Usually SRAM technology, so volatile. Both are programmed using the same software, using either schematic entry or text entry.

Copyright ©2009 by Pearson Higher Education, Inc. Upper Saddle River, New Jersey All rights reserved. Digital Fundamentals, Tenth Edition Thomas L. Floyd Figure The basic concept of an LUT programmed for a particular SOP output.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed FPGAs An FPGA uses a different architecture than a CPLD. The configurable logic block (CLB) or logic array block (LAB) is the basic element which is replicated many times. CLBs are arranged in a row and column structure. Within the CLBs are logic modules joined by local interconnects. Generally, the logic modules are composed of a look-up table (LUT), a flip-flop, and a MUX that can be used to bypass the flip-flop for strictly combinational logic.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed FPGAs Logic modules can be configured for combinational logic, registered logic, or a combination of both. The global interconnects distribute signals (including the clock) to various CLBs. FPGAs may also have a “hard core” portion of logic that is put in by the manufacturer and cannot be reprogrammed by the user. These FPGAs are useful in commonly used functions such as I/O interfaces.

FPGA Cores  Most SPLDs and CPLDs are completely blank when you buy them.  Because FPGAs are so dense, many chip-makers give the option of manufacturing some of the circuitry to perform a specific function, such as a microprocessor or a RAM.  Such pre-programmed circuitry is called a core.

Example Showing FPGA Cores (Fig )

Hard Core, Soft Core, IP  A hard core is a core that cannot be reprogrammed by the user.  A soft core is a core that the user can reprogram to some extent.  Cores are also referred to as intellectual property (IP), since the chip-maker retains ownership of the core design.  Example on Altera’s website. Example on Altera’s website.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Review: Programmable Logic Software All manufacturers of programmable logic provide software to support their products. The process is illustrated in the flowchart. The first step is to enter the logic design into a computer. It is done in one of two ways: 1) Schematic entry 2) Hardware description language (HDL).

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Review: Programmable Logic Software In schematic entry, the design is drawn on a computer screen by placing components and connecting then with simulated wires. After drawing the schematic, it can be reduced to a single block symbol:

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Programmable Logic Software In text entry, the design is entered via a hardware description language such as VHDL or Verilog.

Hardware Description Languages (HDLs)  Many hardware description languages (HDLs) exist for text entry of PLD designs.  Learning an HDL takes longer than learning to do schematic entry. But for complex designs it can provide a more powerful and simpler way to enter designs.

Some Popular HDLs  Open-standard HDLs VHDL (IEEE 1076) Verilog (IEEE 1364)  Proprietary HDLs CUPL ABEL (Advanced Boolean Expression Language, now owned by Xilinx) AHDL (Altera HDL)

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed A VHDL Sample One way of writing VHDL programs is to use Boolean-type statements. There are two parts to such a program: the entity and the architecture. The entity portion describes the I/O. The architecture portion describes the logic. Following is a short VHDL program showing the two parts. entity Example is port (B,C,D: in bit; X: out bit); end entity Example; architecture Behavior of Example is begin X <= (B or C) and D; end architecture Behavior;

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed A Verilog Sample Another standard HDL is Verilog. In Verilog, the I/O and the logic is described in one unit called a module. Verilog uses specific symbols to stand for the Boolean logical operators. The following is the same program as in the previous slide, written for Verilog: module Example (X, B, C, D); input B, C, D; output X; assign X = (B | C)&D; endmodule

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Boundary Scan Logic Boundary scan logic is circuitry on a PLD whose purpose is to let users test and program the chip. The JTAG standard (IEEE ) is a widely used open standard that defines four internal registers and five I/O signals for this purpose. Under normal operation, the boundary scan logic is “invisible”.

JTAG (IEEE ) Registers and I/O Signals  Registers Boundary scan register Bypass register Instruction register Optional: Identification register  I/O Signals TDI (Test Data In) TDO (Test Data Out) TMS (Test Mode Select) TCK (Test Clock) Optional: TRST (Test Reset)  See pp. 4-5 of Altera UP1 Board manual (on course website). See pp. 4-5 of Altera UP1 Board manual (on course website).

Copyright ©2009 by Pearson Higher Education, Inc. Upper Saddle River, New Jersey All rights reserved. Digital Fundamentals, Tenth Edition Thomas L. Floyd Figure Greatly simplified diagram of a JTAG compliant (IEEE Std ) programmable logic device (CPLD or FPGA). The BSCs (boundary scan cells) form the boundary scan register. Only a small number of BSCs are shown for illustration.

Copyright ©2009 by Pearson Higher Education, Inc. Upper Saddle River, New Jersey All rights reserved. Digital Fundamentals, Tenth Edition Thomas L. Floyd Figure Boundary scan logic diagram.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Selected Key Terms PAL GAL Macrocell CPLD A type of one-time programmable SPLD that consists of a programmable array of AND gates that connects to a fixed array of OR gates. A reprogrammable type of SPLD that that is similar to a PAL except it uses a reprogrammable process technology, such as EEPROM instead of fuses. Part of a PAL, GAL, or CPLD that generally consists of one OR gate and some associated output logic. A complex reprogrammable logic device that consists basically of multiple SPLD arrays with programmable interconnections.

© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Selected Key Terms FPGA Design flow Schematic entry Text entry Boundary scan Field programmable gate array; a programmable logic device that uses the LUT as the basic logic element and generally employs either the antifuse or SRAM- based process technology The process or sequence carried out to program a target device. A method of placing a logic design into software using schematic symbols. A method of placing a logic design into software using a hardware description language (HDL). A method for internally testing a PLD based on the JTAG standard (IEEE Std ).