Programmable Logic PAL, PLA.

Slides:



Advertisements
Similar presentations
Random-Access Memory (RAM)
Advertisements

Digital Design: Combinational Logic Blocks
Overview Programmable Implementation Technologies (section 6.8)
CS370 – Spring 2003 Programmable Logic Devices PALs/PLAs.
Programmable Logic Devices
1 Programmable Logic. 2 Prgrammable Logic Organization Pre-fabricated building block of many AND/OR gates (or NOR, NAND) "Personalized" by making or breaking.
111 Basic Circuit Elements n Standard TTL Small-Scale Integration: 1 chip = 2-8 gates n Requires numerous chips to build interesting circuits n Alternative:
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 3 – Combinational.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 9 Programmable Configurations Read Only Memory (ROM) – –a fixed array of AND gates.
Parity. 2 Datasheets TTL:  CMOS: 
ECE C03 Lecture 41 Lecture 4 Combinational Logic Implementation Technologies Prith Banerjee ECE C03 Advanced Digital Design Spring 1998.
Memory and Programmable Logic
Chapter 3 Continued Logic Gates Logic Chips Combinational Logic Sequential Logic Flip Flops Registers Memory Timing State Machines.
1 کلاس جبراني  پنجشنبه 26 فروردين: ساعت 8:00 صبح ميان ترم  سه شنبه 3 ارديبهشت: ساعت 9:30 صبح.
Chapter # 4: Programmable and Steering Logic Section 4.1
PLAs Programmable Logic Arrays
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Lecture 13 – Programmable.
Figure to-1 Multiplexer and Switch Analog
EE 261 – Introduction to Logic Circuits Module #8 Page 1 EE 261 – Introduction to Logic Circuits Module #8 – Programmable Logic & Memory Topics A.Programmable.
Programmable Logic Devices, Threshold Logic
Memory and Programmable Logic
ECE 2110: Introduction to Digital Systems Chapter 6 Combinational Logic Design Practices Decoders.
Random-Access Memory (RAM)
Memory and Programmable Logic Dr. Ashraf Armoush © 2010 Dr. Ashraf Armoush.
درس مدارهای منطقی دانشگاه قم Programmable Logic (PAL, PLA) تهیه شده توسط حسین امیرخانی مبتنی بر اسلایدهای درس مدارهای منطقی دانشگاه.
Field-programmable logic devices FPLA circuits –Packaged PLA components with a fuse at every diode in both the AND and OR sections, that can be configured.
Digital Electronics Chapter 7 Memory and Programmable Logic.
ROM & PLA Digital Logic And Computer Design
Programmable Logic Devices
1 Lecture 9 Demultiplexers Programmable Logic Devices  Programmable logic array (PLA)  Programmable array logic (PAL)
Chapter
1 Building Larger Circuits Today: Combinational Building BlocksFirst Hour: Combinational Building Blocks –Section 4.1 of Katz’s Textbook –In-class Activity.
1 Memory Design EE 208 – Logic Design Chapter 7 Sohaib Majzoub.
1 CSE370, Lecture 11 Lecture 11  Logistics  HW3 due now  Lab4 goes on as normal next week  Tuesday review 6pm, place TBD  Last lecture  "Switching-network"
Programmable Logic Devices (PLDs)
EE207: Digital Systems I, Semester I 2003/2004
Chapter # 4: Programmable Logic
IC design options PLD (programmable logic device)
DIGITAL SYSTEMS Programmable devices PLA-PAL Rudolf Tracht and A.J. Han Vinck.
CSET 4650 Field Programmable Logic Devices
Programmable logic devices. CS Digital LogicProgrammable Logic Device2 Outline PLAs PALs ROMs.
Complex Combinational Circuits Binary Adders Key to enterprise: Addition table also a truth table S i = C i 'A i B i ' + C i 'A i 'B i + C i A i 'B i '+
CSI-2111 Structure of Computers Ipage Combinational Circuits  Objectives : To recognize the principal types of combinational circuits  Adders.
CSCE 211: Digital Logic Design Chin-Tser Huang University of South Carolina.
ECE 3110: Introduction to Digital Systems Chapter 6 Combinational Logic Design Practices Decoders.
Chapter 7 Memory and Programmable Logic
1 Chap 6. Memory and Programmable Devices Memory & Programmable Logic Device Definitions Memory –a collection of cells capable of storing binary.
Programmable Logic Devices
1 Programmable Logic There are other ways to implement a logic function than to hook together discrete 74XX packages or create a custom Integrated Circuit.
Memory and Programmable Logic
Chapter # 4: Programmable Logic
IT IS ABOUT : Programmable Logic PAL, PLA.
Lecture 9 Logistics Last lecture Today HW3 due Wednesday
ECE 434 Advanced Digital System L03
CPE/EE 422/522 Advanced Logic Design L02
حافظه و منطق قابل برنامه ریزی
CSCE 211: Digital Logic Design
Programmable Logic Devices (PLDs)
ECE434a Advanced Digital Systems L02
حافظه و منطق قابل برنامه ریزی
Programmable Logic.
Semiconductor Memories
Programmable Configurations
Unit -06 PLDs.
Lecture 11 Logistics Last lecture Today HW3 due now
CSCE 211: Digital Logic Design
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
Overview Last lecture Timing; Hazards/glitches
Presentation transcript:

Programmable Logic PAL, PLA

Programmable Logic Array PLAs Programmable Logic Array Pre-fabricated building block of many AND/OR gates (or NOR, NAND) "Personalized" by making/ breaking connections among the gates. General purpose logic building blocks.

PLA

PLA

PLA A 3×2 PLA with 4 product terms.

Design for PLA: Example Implement the following functions using PLA F0 = A + B' C' F1 = A C' + A B F2 = B' C' + A B F3 = B' C + A Input Side: 1 = asserted in term 0 = negated in term - = does not participate Personality Matrix Outputs Inputs Product t erm Reuse of erms A 1 - B C F 2 3 A B B C A C Output Side: 1 = term connected to output 0 = no connection to output

Example: Continued F0 = A + B' C' F1 = A C' + A B F2 = B' C' + A B Personality Matrix

Constants Sometimes a PLA output must be programmed to be a constant 1 or a constant 0. P1 is always 1 because its product line is connected to no inputs and is therefore always pulled HIGH; this constant-1 term drives the O1 output. No product term drives the O2 output, which is therefore always 0. Another method of obtaining a constant-0 output is shown for O3.

BCD to Gray Code Converter Minimized Functions: W = A + B D + B C X = B C' Y = B + C Z = A'B'C'D + B C D + A D' + B' C D'

Product terms cannot be shared ! A B C D A BD 4 product terms per each OR gate BC BC’ Product terms cannot be shared ! B PLA achieves higher flexibility at the cost of lower speed! C BCD AD’ BCD’ W X Y Z

Programmable Array Logic PALs Programmable Array Logic a fixed OR array.

PAL inputs 1st output section 2nd output Only functions with section at most four products can be implemented 3rd output section 4th output section

PAL W = ABC + CD X = ABC + ACD + ACD + BCD Y = ACD + ACD + ABD

Helper Terms If an I/O pin’s output-control gate produces a constant 1,  the output is always enabled, but the pin may still be used as an input too.  outputs can be used to generate first-pass “helper terms” for logic functions that cannot be performed in a single pass with the limited number of AND terms available for a single output.

Read-Only Memory ROM

ROM Decoder ORs Produces minterms Produce SOP’s A B C D S2 S1 S0 S3 1 1 2 3 4 5 6 7 8 9 10 12 13 14 15 4:16 dec Enb A ‘B’C’D’ ‘B’C’D ‘B’CD’ ‘B’CD ‘BC’D’ ‘BC’D ‘BCD’ ‘ BCD B’C’D’ B’C’D B’CD’ B’CD B C’D’ B C’D B C D’ B C D F 1 3 2 A B C D

ROM ROM A decoder A set of programmable OR’s D7 D6 D5 D4 D3 D2 D1 D0 X

ROM vs. PLA/PAL Programmable Connections Programmable Connections Fixed Programmable Programmable Inputs AND array Outputs Connections OR array (decoder) (a) Programmable read-only memory (PROM) Programmable Inputs Programmable Fixed Outputs Connections AND array OR array (b) Programmable array logic (PAL) device Programmable Programmable Programmable Programmable Inputs Outputs Connections AND array Connections OR array (c) Programmable logic array (PLA) device

General Logic Implementation Given a 2kxn ROM, we can implement ANY combinational circuit with at most k inputs and at most n outputs. Why? k-to-2k decoder will generate all 2k possible minterms Each of the OR gates must implement a m() Each m() can be programmed

Find a ROM-based circuit implementation for: Example Find a ROM-based circuit implementation for: f(a,b,c) = a’b’ + abc g(a,b,c) = a’b’c’ + ab + bc h(a,b,c) = a’b’ + c Solution: Express f(), g(), and h() in m() format (use truth tables) Program the ROM based on the 3 m()’s

Example There are 3 inputs and 3 outputs, thus we need a 8x3 ROM block. f = m(0, 1, 7) g = m(0, 3, 6, 7) h = m(0, 1, 3, 5, 7) 3-to-8 decoder 1 2 3 4 5 6 7 a b c f g h

ROM as a Memory Read Only Memories (ROM) or Programmable Read Only Memories (PROM) have: N input lines, M output lines, and 2N decoded minterms. Can be viewed as a memory with the inputs as addresses of data (output values), hence ROM or PROM names!

(Memories) Volatile: Non-Volatile: Random Access Memory (RAM): SRAM "static" DRAM "dynamic" Non-Volatile: Read Only Memory (ROM): Mask ROM "mask programmable" EPROM "electrically programmable" EEPROM “electrically erasable electrically programmable" FLASH memory - similar to EEPROM with programmer integrated on chip

ROM as Memory Read Example: For input (A2,A1,A0) = 011, output is (F0,F1,F2,F3 ) = 0010. What are functions F3, F2 , F1 and F0 in terms of (A2, A1, A0)? Address 8x4 ROM D0 D1 D2 D3 D4 D5 D6 D7 A2 A1 A0 A B C F3 F2 F1 F0 X 1 2 3 4 5 6 7 A[2:0] F[3:0] 3 4

Design by ROM: Example BCD to 7 Segment Display Controller A B C D C0 C1 C2 C3 C4 C5 C6 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 0 0 1 1 0 0 0 0 1 1 0 1 1 0 1 1 1 1 1 0 0 1 0 1 1 0 0 1 1 1 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 X X X X X X X

Standard Devices Vpp and PGM are used when programming 2764 EPROM 8K x 8