RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS – UNIVERSITY OF WINDSOR Introduction to Programmable Logic Technology

Department of Electrical and Engineering

06-88-330 Digital Logic Design II Lab, Fall 2011 Instructor: Dr. M. Khalid

Slides prepared by: Amir Yazdanshenas (former GA) Modified by: Dr. M. Khalid

1 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR History • Between 70-80’s designers used SSI/MSI technology (74xx standard logic gates) to design logic circuits by putting multiple ICs (>100) together in a circuit. Later, as the size, complexity and speed of digital circuits increased, using off-the-shelf ICs was no longer practical. Companies started to produce Application Specific Integrated Circuits (ASIC) or Full-custom VLSI chips.

Advantages: - Produced best results w.r.t. speed, size and cost per unit. Disadvantages: - Engineering cost was enormous! - Very time consuming! (months or years)! - Testing the chips was very difficult - Engineering errors are fatal!

But still used for high volume products e.g. Pentium, ICs for cell phones, etc.

2 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

Digital Logic

Standard Progammable Full ASICs Logic Logic (FPLDs) Custom

Microproce ssor TTL CMOS PLDs FPGAs CPLDs & RAM 74xx 4xxx

Gate Standard Arrays Cell

Technologies for Implementing Digital Logic

RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Programmable Logic Device (PLD)

• A PLD is an (IC) in which its internal circuitry has an “UNDEFINED” function at the time of manufacture. A PLD is a collection of basic logic “ELEMENTS” with no predefined structure.

• Before PLD can be used in a circuit, it must be “PROGRAMMED” (or “configured”).

• Users can implement ANY logic circuit quickly and efficiently.

3 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

Comparison of Digital Logic Design Technologies

4 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

Types of Programmable Logic Devices

• PLA • PAL • GAL • CPLD • Look-up Table (LUT) based PLDs • FPGA

5 AB + AC RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 1- (PLA) • Two levels of logic gates: Programmable “AND”-plane + Programmable “OR”-plane • “AND” gates produce the Product Terms and “OR” gates produce Sum of Products (SOP). (e.g. F1 = A B + A B C )

6 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

One-Time Programmable Interconnection Fuse in PLA

7 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Examples of logic functions implemented in a PLA • Programming a PLA involves blowing the interconnection fuses.

F0 = A + BC,F1 = AB + AC,F2 = AB + BC,F3 = A + BC

8 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 2- (PAL) • Two levels of logic gates: Programmable “AND”-plane + Fixed “OR”-plane

9 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Implementing Sequential Circuits in PALs

10 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 3- Generic Array Logic (GAL) GALs are very similar to PLAs and PALs except for the fact that programmable connections are “MEMORY-controlled Switches”.

11 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Implementing Sequential Circuits in GALs Users can select the “Registered Output” by programming the “Memory-controlled Programmable Multiplexer”.

12 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 4- Complex PLD (CPLD) To provide large capacity devices, they integrated multiple Simple PLDs (SPLDs) onto a single chip and provided PROGRAMMABLE interconnection to connect them together.

13 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Programmable Interconnection

14 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 5- Look Up Table (LUT) based PLDs Design example: A B C D F 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 15 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR LUT-based PLDs (Cont’d) - For an N-input logic circuit, we need a 2 N × 1 LUT.

2N - With a 2 N × 1 LUT we can implement 2 different logic Functions!

16 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR An Example of Look-Up Table e.g. For an 2-input LUT (n=2) we can implement 16 different functions.

17 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR LUT-Based Basic Logic Element (BLE) Instead of array of logic gates, there is a K-input LUT.

18 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR 6- Field Programmable Gate Arrays (FPGA) • FPGAs have got the highest logic capacities among PLDs • SRAM-based K-input LUTs (3≤K≤6) = A.K.A Logic Element (LE) • LEs are connected together using programmable interconnection.

19 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

Interconnection (Routing) Architecture in FPGAs

20 RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR Real CPLD and FPGAs

RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR CPLD Applications

• Can construct reasonably complex designs

• Graphics controllers, LAN controllers, bus interface logic

• All CPLDs are re-programmable • Memory controlled switches, anti-fuses

• Some are re-programmable in circuit (ISP) • e.g. modems allow new communication protocols to be downloaded RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR FPGA Applications • Complex building blocks (ASIC replacement) in cellular base stations, telecom switches, computer peripherals, high speed servers, instrumentation, etc. • Any application in which cost, speed and power requirements are met! RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR

Mapping CAD Tools: ISE Design Flow Note: CAD flow will be similar for Quartus II

Plan & Budget Create Code/ HDL RTL Schematic Simulation Implement Functional Synthesize Translate Simulation to create netlist

Map

Place & Route

Attain Timing Timing Create Closure Simulation Bit File RESEARCH CENTRE FOR INTEGRATED MICROSYSTEMS - UNIVERSITY OF WINDSOR What are we going to do in the Lab? 1- We will design (model and simulate) digital circuits using VHDL. 2- We will Compile & Synthesize the logic circuits using ALTERA® QUARTUS II FPGA CAD tool. 3- We will be working with ALTERA® DE2 boards – see brochure and user manual on course web site

21