Introduction to Programmable Logic Devices (Class 7.2 2/28/2013)

Similar documents
Programmable Logic Devices

Presentation 4: Programmable Combinational Devices

CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

B.Tech II Year I Semester (R13) Regular Examinations December 2014 DIGITAL LOGIC DESIGN

LSN 6 Programmable Logic Devices

Programmable Logic Devices (PLDs)

Topics. Midterm Finish Chapter 7

Unit 6 1.Random Access Memory (RAM) Chapter 3 Combinational Logic Design 2.Programmable Logic

Experiment 3: Logic Simplification

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

Programmable Logic Devices UNIT II DIGITAL SYSTEM DESIGN

Programmable Logic Devices. Programmable Read Only Memory (PROM) Example

Code No: R Set No. 1

2.6 BOOLEAN FUNCTIONS

PROGRAMMABLE LOGIC DEVICES

Memory and Programmable Logic

Code No: R Set No. 1

Code No: 07A3EC03 Set No. 1

Injntu.com Injntu.com Injntu.com R16

CHAPTER-2 STRUCTURE OF BOOLEAN FUNCTION USING GATES, K-Map and Quine-McCluskey

R10. II B. Tech I Semester, Supplementary Examinations, May

HANSABA COLLEGE OF ENGINEERING & TECHNOLOGY (098) SUBJECT: DIGITAL ELECTRONICS ( ) Assignment

SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN

Fig. 6-1 Conventional and Array Logic Symbols for OR Gate

ECE 331 Digital System Design

CS470: Computer Architecture. AMD Quad Core

R07. Code No: V0423. II B. Tech II Semester, Supplementary Examinations, April

Combinational Logic Circuits

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE4220. PROGRAMMABLE LOGIC DEVICES (PLDs)

COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING QUESTION BANK SUBJECT CODE & NAME: EC 1312 DIGITAL LOGIC CIRCUITS UNIT I

Code No: R Set No. 1

Embedded Controller Design. CompE 270 Digital Systems - 5. Objective. Application Specific Chips. User Programmable Logic. Copyright 1998 Ken Arnold 1

END-TERM EXAMINATION

Boolean Algebra. BME208 Logic Circuits Yalçın İŞLER

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

EECS 150 Homework 7 Solutions Fall (a) 4.3 The functions for the 7 segment display decoder given in Section 4.3 are:

Chapter 13 Programmable Logic Device Architectures

CMPE223/CMSE222 Digital Logic

Specifying logic functions

DKT 122/3 DIGITAL SYSTEM 1

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 04. Boolean Expression Simplification and Implementation

Lecture 13: Memory and Programmable Logic

QUESTION BANK FOR TEST

II/IV B.Tech (Regular/Supplementary) DEGREE EXAMINATION. Answer ONE question from each unit.

Module -7. Karnaugh Maps

Boolean Algebra and Logic Gates

VALLIAMMAI ENGINEERING COLLEGE. SRM Nagar, Kattankulathur DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC6302 DIGITAL ELECTRONICS

CSCI 220: Computer Architecture I Instructor: Pranava K. Jha. Simplification of Boolean Functions using a Karnaugh Map

ECE380 Digital Logic

R07

Lecture (05) Boolean Algebra and Logic Gates

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

problem maximum score 1 10pts 2 8pts 3 10pts 4 12pts 5 7pts 6 7pts 7 7pts 8 17pts 9 22pts total 100pts

PALs, GALs & CUPL. What is Programmable Logic?

Lecture 4: Implementation AND, OR, NOT Gates and Complement


Chapter 6 Selected Design Topics

Points Addressed in this Lecture. Standard form of Boolean Expressions. Lecture 4: Logic Simplication & Karnaugh Map

IT 201 Digital System Design Module II Notes

UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT

ECE/Comp Sci 352 Digital Systems Fundamentals Kewal K. Saluja and Yu Hen Hu Spring Logic and Computer Design Fundamentals.

R.M.D. ENGINEERING COLLEGE R.S.M. Nagar, Kavaraipettai

CS8803: Advanced Digital Design for Embedded Hardware

Combinational Logic Use the Boolean Algebra and the minimization techniques to design useful circuits No feedback, no memory Just n inputs, m outputs

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

DHANALAKSHMI SRINIVASAN COLLEGE OF ENGINEERING AND TECHNOLOGY

Recitation Session 6

Programmable Logic Devices I. EECE143 Lecture 4. PALs, GALs & CUPL. A lesson on Programmable Logic Devices and programming them using CUPL

Memory and Programmable Logic

Workshop on Digital Circuit Design in FPGA

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

Digital Electronics 27. Digital System Design using PLDs

Review. EECS Components and Design Techniques for Digital Systems. Lec 03 Field Programmable Gate Arrays

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE)

MEMORY AND PROGRAMMABLE LOGIC

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

I 4 I 3 I 2 I 1 I 0 A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 T-125. ROM Truth Table (Partial) 1997 by Prentice-Hall, Inc.

10EC33: DIGITAL ELECTRONICS QUESTION BANK

Hours / 100 Marks Seat No.

Digital logic fundamentals. Question Bank. Unit I

UNIT- V COMBINATIONAL LOGIC DESIGN

VALLIAMMAI ENGINEERING COLLEGE

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Experiment 4 Boolean Functions Implementation

Chap-2 Boolean Algebra

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

Hours / 100 Marks Seat No.

Programmable Logic Devices

VALLIAMMAI ENGINEERING COLLEGE

Chapter 2 Combinational

EEE130 Digital Electronics I Lecture #4_1

Question Total Possible Test Score Total 100

FYSE420 DIGITAL ELECTRONICS. Lecture 7

SHRI ANGALAMMAN COLLEGE OF ENGINEERING. (An ISO 9001:2008 Certified Institution) SIRUGANOOR, TIRUCHIRAPPALLI

R a) Simplify the logic functions from binary to seven segment display code converter (8M) b) Simplify the following using Tabular method

ece5745-pla-notes.txt

Unit-IV Boolean Algebra

Optimized Implementation of Logic Functions

1. Mark the correct statement(s)

Question No: 1 ( Marks: 1 ) - Please choose one A SOP expression is equal to 1

Transcription:

Introduction to Programmable Logic Devices (Class 7.2 2/28/2013) CSE 2441 Introduction to Digital Logic Spring 2013 Instructor Bill Carroll, Professor of CSE

Today s Topics Complexity issues Implementation Design Programmable logic devices Simple Programmable Logic Devices (SPLDs) Programmable Logic Arrays (PLAs) Programmable Array Logic (PALs) Programmable Read Only Memory (PROM) Complex Programmable Logic Devices (CPLDs) Field Programmable Logic Devices (FPGAs)

Issues In Digital Circuit Implementation and Design Gates per integrated circuit Pin limitations Wiring complexity Speed Heat dissipation Design time More-complex functionality Testability Cost

Advances In Digital Circuit Implementation and Design Higher levels of integration Larger packages More pins per package New and improved technologies Multilayer printed circuit boards Application Specific ICs (ASICS) Programmable logic CAD tools Automated testing

Basic Programmable Logic Array Organization

Two-Level AND-OR Arrays Realization of f(a,b,c) = abc + b c a a x b b x x c c x x x x abc + bc abc (b) bc Figure 5.5

a Multiple Functions Realized by an AND-OR Array x b c x x x x x x ab x c x bc f 1 (a, b, c) = ab + c f 2 (a, b, c) = ab + bc Figure 5.6

PLA Design -- Example 5.1 Design a PLA to realize the following 3 logic functions and show the internal connections. f 1 (A,B,C,D,E) = A B D + B CD + A BCDE f 2 (A,B,C,D,E) = A BE + B CD E f 3 (A,B,C,D,E) = A B D + B C D E + A BCD Since there are 5 inputs, there must be at least 5 inputs to the PLA, each of which must be both complemented and uncomplemented. There are a total of 7 unique product terms in the preceding 3 expressions. So the PLA must generate at least 7 product terms. Since 3 functions are being realized, there must be 3 sum (OR) terms generated.

Example 5.1 (continued) The PLA organization is shown in Fig. 5.7. Table 5.1 shows the connections that must be made in the AND and OR arrays. In the table, the product term numbers correspond to the AND gate numbers in Fig. 5.7, each connected to one vertical product line, on which a product term is generated. In the AND array portion of the table - a 0 indicates that the complement of the variable is connected to the product line - a 1 indicates the the uncomplemented input is connected to the product line - an indicates that neither is connected to the product line For the OR array, a 1 indicates a connection and a 0 indicates no connection.

PLA for Example 5.1 Figure 5.7

Table 5.1 -- PLA Table for Example 5.1 AND Array Inputs OR Array Outputs Product Term ABCDE f 1 f 2 f 3 1 2 3 4 5 6 7 A B D B CD A BCDE A BE B CD E B C D E A BCD 00 0 010 01110 01 1 0101 0001 0111 101 100 100 010 010 001 001

Basic Programmable Logic Array Organization

Output Polarity Options Inputs I l I k.... Active high (H) Active low (L) Active high Active low Complementary outputs (C) Programmable polarity (P) P l Product terms P m (a) +V Fuse Figure 5.11

Output Polarity Options(continued) S i x O i = S i S i O i = S i (b) (c) Figure 5.11

Implementation of SOP and POS Forms A * * B * * * C * * * * * * f 1 * * f 2 AB AC AB AC Figure 5.12

Bidirectional Pins and Feedback Lines A bidirectional pin is driven by a three-state driver, whose control line is connected to one of the product terms. When the control line is 1, the driver is said to be enabled and functions as a short circuit, as shown in Fig. 5.13b. In this case the sum term is driven onto the pin, which therefore functions as an output. This value is fed back to the AND array, where it can be used to form product terms. When the driver control line is 0, the driver is disabled and functions as an open circuit, as shown in Fig. 5.13c. This disconnects the sum term from the pin, which, through the feedback line, now becomes an input to the AND array.

Bidirectional Pins P 1... P n P n + 1 I 1 I k.. Feedback... IO m S m Three-state driver (a) Figure 5.13

Bidirectional Pins(continued) Feedback = S m Feedback = IO m S m (b) IO m (output) S m (c) IO m (input) Figure 5.13

Two-bit ripple-carry adder Example 5.3 Implement a 2-bit ripple-carry adder, as shown in Fig. 5.14a, using a programmable logic array having 4 dedicated input pins, 3 dedicated output pins, and 3 bidirectional pins. The standard logic equations for one state, i, of an n-bit full-adder are the following: S i = A i B i C i-1 + A i B i C i-1 + A i B i C i-1 + A i B i C i-1 C i = A i B i + A i C i-1 + B i C i-1 where A i and B i are the data inputs and C i-1 the carry input to stage i, S i is its sum output and C i the carry output. For a ripple-carry adder, the carry-out of one stage is connected to the carry input of the next stage, as shown in Fig. 5.14a.

Example 5.3(continued) Figure 5.14b shows the PLA implementation of the block diagram in Fig. 5.14a. Since the adder requires 5 inputs, and there are only 4 dedicated input pins, bidirectional pin 5 is used as another input. The driver of pin 5 is disabled by product line 16 by leaving all its fuses intact. Carry term C 0 is used to compute terms S 1 and C 1 through the feedback line from pin 6, allowing C 0 to be combined with A 1 and B 1 by the preceding equations.

Figure 5.14 Two-bit Ripple-carry Adder Example 5.3

Programmable Read-only Memory A PROM comprises a fixed AND array and a programmable OR array, as illustrated in Fig. 5.21. The AND array generates all 2 n possible minterm products of its n inputs and therefore often referred to as an n-to-2 n decoder. The OR array allows any combination of product terms to be included in each sum term. The canonical sum of products form of any function can be realized directly from its truth table or minterm list. Figure 5.22 illustrates the organization of most typical commercial PROMs.

Programmable Read-only Memory (PROM) I 0 I 1 I 2 Fixed AND array Programmable OR array... O 1 O 2 O k m 0 m 1 m 2 m 3 m 4 m 5 m 6 m 7 Minterms Figure 5.21

General Configuration of a Commercial PROM Inputs A 0 A 1 A N-1.. AND array CE Chip enable. P 0 P 1 P2 N-1 OR array..... Product terms Output drivers O 1 O 2 O M Outputs Figure 5.22

Realizing Logic Functions with PROMs Each output of a PROM is capable of realizing any arbitrary switching function by connecting that output to the minterms of the function. To realize a given switching function with a PROM, first express the function in canonical SOP form or else derive the truth table of the function. Then, each of the minterms of the function is connected to the desired OR term to produce the canonical SOP form. It should be noted that the use of a commercially available PROM would be very inefficient when only a small number of minterms is needed, unless minimizing chip count is the primary goal.

PROM Realization -- Example 5.6 Realize the following 3 switching functions with a 3-input, 3-output PROM. f 1 (A, B, C) = AB + B C f 2 (A, B, C) = (A + B + C)(A + B) f 3 (A, B, C) = A + BC First, convert each function to canonical SOP form. f 1 (A, B, C) = ABC + ABC + A B C + AB C = m(1, 5, 6, 7) f 2 (A, B, C) = (A + B + C)(A + B + C )(A + B + C) = M(2, 4, 5) = m(0, 1, 3, 6, 7) f 3 (A, B, C) = AB C + ABC + AB C + ABC + A BC = m(3, 4, 5, 6, 7)

PROM Realization for Example 5.6 Figure 5.23

Lookup Tables (LUT) A common application of PROMs is the lookup table, in which a function is stored in tabular form with its arguments used as an index into the table to retrieve the value of the function for those arguments. Since truth tables can be readily realized by PROMs, lookup tables are implemented by writing them in truth table format and then realizing the truth table with a PROM.

Programmable Array Logic (PAL)

Example 5.10 PAL Design Example Realize the following functions with a PAL f α (A,B,C,D) = A B D + B CD + A BCD f β (A,B,C,D) = A B + B CD f γ (A,B,C,D) = A B D + B C D + A BCD

Example 5.10 -- PAL Realization

Complex Programmable Logic Devices (CPLDs)

Summary of Programmable Logic Devices PLA AND array and OR array are programmable PAL AND array programmable, OR array fixed PROM AND array fixed, OR programmable CPLD programmable array of PALs FPGA programmable array of logic elements

Cyclone II FPGA* LAB Logic Array Block, PLL Phase Locked Loop, IOEs I/O Elements *From Cyclone II Device Family Data Sheet

Cyclone II FPGA Family Features* *From Cyclone II Device Family Data Sheet

Cyclone II Package Options* *From Cyclone II Device Family Data Sheet

Cyclone II Device Resources* *From Cyclone II Device Family Data Sheet

Cyclone II Logic Element Architecture* *From Cyclone II Device Family Data Sheet

Cyclone II Logic Element in Normal Mode* *From Cyclone II Device Family Data Sheet

Cyclone II Logic Element in Arithmetic Mode* *From Cyclone II Device Family Data Sheet