SlideShare a Scribd company logo
4
Most read
7
Most read
11
Most read
Programmable Array Logic
Presentation By:
Fareed Yousuf
Jawwad Khatri
Muhammad Afnan
SMI University
 PLDs
 Programmable Logic Devices (PLD)
 General purpose chip for implementing circuits
 Can be customized using programmable switches
 Main types of PLDs
 PLA
 PAL
 ROM
 CPLD
 FPGA
 Custom chips: standard cells, sea of gates
 PLD as a Black Box
Logic gates
and
programmable
switches
Inputs
(logic variables)
Outputs
(logic functions)
 Programmable Logic Array (PLA)
 Use to implement
circuits in SOP form
 The connections in
the AND plane are
programmable
 The connections in
the OR plane are
programmable
f1
AND plane OR plane
Input buffers
inverters
and
P1
Pk
fm
x1 x2 xn
x1 x1 xn xn
 Programmable Array Logic (PAL)
 Also used to implement
circuits in SOP form
 The connections in
the AND plane are
programmable
 The connections in
the OR plane are
NOT programmable
f1
AND plane OR plane
Input buffers
inverters
and
P1
Pk
fm
x1 x2 xn
x1 x1 xn xn
fixed connections
 Limitations of PLAs
 PLAs come in various sizes
 Typical size is 16 inputs, 32 product terms, 8 outputs
 Each AND gate has large fan-in  this limits the number of
inputs that can be provided in a PLA
 16 inputs  316
= possible input combinations; only 32
permitted (since 32 AND gates) in a typical PLA
 32 AND terms permitted  large fan-in for OR gates as well
 This makes PLAs slower and slightly more expensive than
some alternatives to be discussed shortly
 8 outputs  could have shared minterms, but not required
 Example Schematic of a PAL
f1
P1
P2
f2
x1 x2 x3
AND plane
P3
P4
f1 = x1x2x3'+x1'x2x3
f2 = x1'x2'+x1x2x3
 Comparing PALs and PLAs
 PALs have the same limitations as PLAs (small
number of allowed AND terms) plus they have a
fixed OR plane  less flexibility than PLAs
 PALs are simpler to manufacture, cheaper, and
faster (better performance)
 PALs also often have extra circuitry connected to the
output of each OR gate
 The OR gate plus this circuitry is called a macrocell
 Macrocell
f1
back to AND plane
D Q
Clock
Select
Enable
Flip-flop
OR gate from PAL 0
1
 Macrocell Functions
 Enable = 0 can be used to allow the output pin for f1
to be used as an additional input pin to the PAL
 Enable = 1, Select = 0 is normal
for typical PAL operation
 Enable = Select = 1 allows
the PAL to synchronize the
output changes with a clock
pulse
 The feedback to the AND plane provides for multi-
level design
f
1
back to AND plane
D Q
Clock
Select
Enable
0
1
 Multi-Level Design with PALs
 f = A'BC + A'B'C' + ABC' + AB'C = A'g + Ag'
 where g = BC + B'C' and C = h below
D Q
Clock
Sel = 0
En = 0
0
1
D Q
Clock
Select
0
1
D Q
Clock
Sel = 0
En = 1
0
1
A B
h
g
f
 ROM
 A ROM (Read Only Memory) has a fixed AND plane
and a programmable OR plane
 Size of AND plane is 2n
where n = number of input
pins
 Has an AND gate for every possible minterm so that all
input combinations access a different AND gate
 OR plane dictates function mapped by the ROM
 Programming SPLDs
 PLAs, PALs, and ROMs are also called SPLDs –
Simple Programmable Logic Devices
 SPLDs must be programmed so that the switches
are in the correct places
 CAD tools are usually used to do this
 A fuse map is created by the CAD tool and then that map is
downloaded to the device via a special programming unit
 There are two basic types of programming techniques
 Removable sockets on a PCB
 In system programming (ISP) on a PCB
 This approach is not very common for PLAs and PALs but
it is quite common for more complex PLDs
 An SPLD Programming Unit
 The SPLD is removed from the PCB, placed into the
unit and programmed there
 Removable SPLD Socket Package
 PLCC (plastic-leaded chip carrier)
Printed circuit board
PLCC socket soldered to
the PCB
 In System Programming (ISP)
 Used when the SPLD cannot be removed from the
PCB
 A special cable and PCB connection are required to
program the SPLD from an attached computer
 Very common approach to programming more
complex PLDs like CPLDs, FPGAs, etc.
 CPLD
 Complex Programmable Logic Devices (CPLD)
 SPLDs (PLA, PAL) are limited in size due to the
small number of input and output pins and the
limited number of product terms
 Combined number of inputs + outputs < 32 or so
 CPLDs contain multiple circuit blocks on a single
chip
 Each block is like a PAL: PAL-like block
 Connections are provided between PAL-like blocks via an
interconnection network that is programmable
 Each block is connected to an I/O block as well
 Structure of a CPLD
PAL-like
block
I/Oblock
PAL-like
block
I/Oblock
PAL-like
block
I/Oblock
PAL-like
block
I/Oblock
Interconnection wires
 Internal Structure of a PAL-like Block
 Includes macrocells
 Usually about 16 each
 Fixed OR planes
 OR gates have fan-in
between 5-20
 XOR gates provide
negation ability
 XOR has a control
input
D Q
D Q
D Q
PAL-like block
PAL-like block
 Programming a CPLD
 CPLDs have many pins – large ones have > 200
 Removal of CPLD from a PCB is difficult without breaking
the pins
 Use ISP (in system programming) to program the CPLD
 JTAG (Joint Test Action Group) port used to connect the
CPLD to a computer
 FPGA
 SPLDs and CPLDs are relatively small and useful for
simple logic devices
 Up to about 20000 gates
 Field Programmable Gate Arrays (FPGA) can handle
larger circuits
 No AND/OR planes
 Provide logic blocks, I/O blocks, and interconnection wires
and switches
 Logic blocks provide functionality
 Interconnection switches allow logic blocks to be connected
to each other and to the I/O pins
 Structure of an FPGA
I/O block
I/O block
I/Oblock
I/Oblock
logic block
interconnection
switch
 Thank you!
 

More Related Content

What's hot (20)

PPTX
Combinational Circuits & Sequential Circuits
gourav kottawar
 
PPT
Shift Registers
Abhilash Nair
 
PPTX
Complex Programmable Logic Device (CPLD) Architecture and Its Applications
elprocus
 
PPTX
FPGA
Syed Saeed
 
PPTX
PLDs
VisualBee.com
 
PPTX
8051 Microcontroller PPT's By Er. Swapnil Kaware
Prof. Swapnil V. Kaware
 
DOCX
Programmable logic array
Huba Akhtar
 
PPTX
Finite state machines
dennis gookyi
 
PDF
fpga programming
Anish Gupta
 
PPTX
Finite State Machine.ppt.pptx
SKUP1
 
PPTX
Transistor Transistor Logic
surat murthy
 
PDF
Cpld fpga
anishgoel
 
PPTX
Verilog HDL
Mantra VLSI
 
PPT
Counters
Abhilash Nair
 
PPT
Multiplexers & Demultiplexers
Jayanshu Gundaniya
 
PDF
vlsi design flow
Anish Gupta
 
PPTX
Fpga
bharadwajareddy
 
PDF
Sequential circuits in Digital Electronics
Vinoth Loganathan
 
PPTX
Logic families
Sandeep Kumar Singh
 
DOCX
Vlsi physical design-notes
Dr.YNM
 
Combinational Circuits & Sequential Circuits
gourav kottawar
 
Shift Registers
Abhilash Nair
 
Complex Programmable Logic Device (CPLD) Architecture and Its Applications
elprocus
 
8051 Microcontroller PPT's By Er. Swapnil Kaware
Prof. Swapnil V. Kaware
 
Programmable logic array
Huba Akhtar
 
Finite state machines
dennis gookyi
 
fpga programming
Anish Gupta
 
Finite State Machine.ppt.pptx
SKUP1
 
Transistor Transistor Logic
surat murthy
 
Cpld fpga
anishgoel
 
Verilog HDL
Mantra VLSI
 
Counters
Abhilash Nair
 
Multiplexers & Demultiplexers
Jayanshu Gundaniya
 
vlsi design flow
Anish Gupta
 
Sequential circuits in Digital Electronics
Vinoth Loganathan
 
Logic families
Sandeep Kumar Singh
 
Vlsi physical design-notes
Dr.YNM
 

Similar to Programmable array logic (20)

PPTX
module7.pptx
AMRITRANJAN30
 
PDF
fbga module 1 for vlsi study matiriajlse
praveennrpravi
 
PPTX
Flash memory
rohitladdu
 
PPTX
Programmable lrray Logic
rohitladdu
 
PDF
Lecture 9.pdf kkksaas;;ACSKCS;A;KAKjmcfhcasc;c;k
MONEERTHAMEER
 
PPTX
PLD's.pptx
AhmedAshraf283978
 
PPTX
Programmbale logic devices_44444441.pptx
rayemma6868
 
PPT
Fundamentals of FPGA
velamakuri
 
PPTX
CPLD & FPGA Architectures and applictionsplications.pptx
Dr.YNM
 
PPTX
Cpld and fpga mod vi
Agi George
 
PDF
Programmable Logic Devices
anand hd
 
PPT
Programmable logic devices
Ammara Javed
 
PPT
PLD-PROM-PAL-PLA.pptcmkmfkmkemkefkmkdmdkmkdm
srishanth8085
 
PDF
CPLD & FPGA
Indira Priyadarshini
 
PPT
L12 programmable+logic+devices+(pld)
NAGASAI547
 
PPT
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
MikeTango5
 
PPT
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
Rethabile37
 
PPTX
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2
Kundan Gupta
 
PPTX
Memory types in fundamental of electronics.pptx
ShaikAkbarAlsaan1
 
module7.pptx
AMRITRANJAN30
 
fbga module 1 for vlsi study matiriajlse
praveennrpravi
 
Flash memory
rohitladdu
 
Programmable lrray Logic
rohitladdu
 
Lecture 9.pdf kkksaas;;ACSKCS;A;KAKjmcfhcasc;c;k
MONEERTHAMEER
 
PLD's.pptx
AhmedAshraf283978
 
Programmbale logic devices_44444441.pptx
rayemma6868
 
Fundamentals of FPGA
velamakuri
 
CPLD & FPGA Architectures and applictionsplications.pptx
Dr.YNM
 
Cpld and fpga mod vi
Agi George
 
Programmable Logic Devices
anand hd
 
Programmable logic devices
Ammara Javed
 
PLD-PROM-PAL-PLA.pptcmkmfkmkemkefkmkdmdkmkdm
srishanth8085
 
L12 programmable+logic+devices+(pld)
NAGASAI547
 
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
MikeTango5
 
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
Rethabile37
 
PROGRAMMABLE LOGIC DEVICES PATR 2 OF 2
Kundan Gupta
 
Memory types in fundamental of electronics.pptx
ShaikAkbarAlsaan1
 
Ad

More from Gaditek (20)

PPTX
Digital marketing strategy and planning | About Business
Gaditek
 
PPT
Intro to social network analysis | What is Network Analysis? | History of (So...
Gaditek
 
PPT
Marketing ethics and social responsibility | Criticisms of Marketing
Gaditek
 
PPT
understanding and capturing customer value | What Is a Price?
Gaditek
 
PPT
The marketing environment | Suppliers | Marketing intermediaries
Gaditek
 
PPT
strategic planning | Customer Relationships | Partnering to Build
Gaditek
 
PPT
Digital marketing | what is marketing?
Gaditek
 
PPT
Fundamentals of Computer Design including performance measurements & quantita...
Gaditek
 
PPTX
Dealing with exceptions Computer Architecture part 2
Gaditek
 
PPTX
Dealing with Exceptions Computer Architecture part 1
Gaditek
 
PPTX
Pipelining of Processors
Gaditek
 
PPT
Instruction Set Architecture (ISA)
Gaditek
 
PDF
differential equation Lecture#14
Gaditek
 
PDF
differential equation Lecture#12
Gaditek
 
PDF
differential equation Lecture#11
Gaditek
 
PDF
differential equation Lecture#13
Gaditek
 
PDF
differential equation Lecture#10
Gaditek
 
PDF
differential equation Lecture#9
Gaditek
 
PDF
differential equation Lecture#8
Gaditek
 
PDF
differential equation Lecture#7
Gaditek
 
Digital marketing strategy and planning | About Business
Gaditek
 
Intro to social network analysis | What is Network Analysis? | History of (So...
Gaditek
 
Marketing ethics and social responsibility | Criticisms of Marketing
Gaditek
 
understanding and capturing customer value | What Is a Price?
Gaditek
 
The marketing environment | Suppliers | Marketing intermediaries
Gaditek
 
strategic planning | Customer Relationships | Partnering to Build
Gaditek
 
Digital marketing | what is marketing?
Gaditek
 
Fundamentals of Computer Design including performance measurements & quantita...
Gaditek
 
Dealing with exceptions Computer Architecture part 2
Gaditek
 
Dealing with Exceptions Computer Architecture part 1
Gaditek
 
Pipelining of Processors
Gaditek
 
Instruction Set Architecture (ISA)
Gaditek
 
differential equation Lecture#14
Gaditek
 
differential equation Lecture#12
Gaditek
 
differential equation Lecture#11
Gaditek
 
differential equation Lecture#13
Gaditek
 
differential equation Lecture#10
Gaditek
 
differential equation Lecture#9
Gaditek
 
differential equation Lecture#8
Gaditek
 
differential equation Lecture#7
Gaditek
 
Ad

Recently uploaded (20)

PPTX
Comparison of Flexible and Rigid Pavements in Bangladesh
Arifur Rahman
 
PPSX
OOPS Concepts in Python and Exception Handling
Dr. A. B. Shinde
 
DOCX
Engineering Geology Field Report to Malekhu .docx
justprashant567
 
PPTX
CST413 KTU S7 CSE Machine Learning Introduction Parameter Estimation MLE MAP ...
resming1
 
PDF
Python Mini Project: Command-Line Quiz Game for School/College Students
MPREETHI7
 
PDF
June 2025 - Top 10 Read Articles in Network Security and Its Applications
IJNSA Journal
 
PDF
lesson4-occupationalsafetyandhealthohsstandards-240812020130-1a7246d0.pdf
arvingallosa3
 
PDF
Decision support system in machine learning models for a face recognition-bas...
TELKOMNIKA JOURNAL
 
PPT
FINAL plumbing code for board exam passer
MattKristopherDiaz
 
PPT
دراسة حاله لقرية تقع في جنوب غرب السودان
محمد قصص فتوتة
 
PPTX
Explore USA’s Best Structural And Non Structural Steel Detailing
Silicon Engineering Consultants LLC
 
PDF
01-introduction to the ProcessDesign.pdf
StiveBrack
 
PPTX
Precooling and Refrigerated storage.pptx
ThongamSunita
 
PDF
FSE-Journal-First-Automated code editing with search-generate-modify.pdf
cl144
 
PDF
Authentication Devices in Fog-mobile Edge Computing Environments through a Wi...
ijujournal
 
PPTX
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pptx
AsadShad4
 
PPTX
Introduction to File Transfer Protocol with commands in FTP
BeulahS2
 
PPTX
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pptx
AsadShad4
 
PPTX
Computer network Computer network Computer network Computer network
Shrikant317689
 
PDF
Clustering Algorithms - Kmeans,Min ALgorithm
Sharmila Chidaravalli
 
Comparison of Flexible and Rigid Pavements in Bangladesh
Arifur Rahman
 
OOPS Concepts in Python and Exception Handling
Dr. A. B. Shinde
 
Engineering Geology Field Report to Malekhu .docx
justprashant567
 
CST413 KTU S7 CSE Machine Learning Introduction Parameter Estimation MLE MAP ...
resming1
 
Python Mini Project: Command-Line Quiz Game for School/College Students
MPREETHI7
 
June 2025 - Top 10 Read Articles in Network Security and Its Applications
IJNSA Journal
 
lesson4-occupationalsafetyandhealthohsstandards-240812020130-1a7246d0.pdf
arvingallosa3
 
Decision support system in machine learning models for a face recognition-bas...
TELKOMNIKA JOURNAL
 
FINAL plumbing code for board exam passer
MattKristopherDiaz
 
دراسة حاله لقرية تقع في جنوب غرب السودان
محمد قصص فتوتة
 
Explore USA’s Best Structural And Non Structural Steel Detailing
Silicon Engineering Consultants LLC
 
01-introduction to the ProcessDesign.pdf
StiveBrack
 
Precooling and Refrigerated storage.pptx
ThongamSunita
 
FSE-Journal-First-Automated code editing with search-generate-modify.pdf
cl144
 
Authentication Devices in Fog-mobile Edge Computing Environments through a Wi...
ijujournal
 
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pptx
AsadShad4
 
Introduction to File Transfer Protocol with commands in FTP
BeulahS2
 
Bharatiya Antariksh Hackathon 2025 Idea Submission PPT.pptx
AsadShad4
 
Computer network Computer network Computer network Computer network
Shrikant317689
 
Clustering Algorithms - Kmeans,Min ALgorithm
Sharmila Chidaravalli
 

Programmable array logic

  • 1. Programmable Array Logic Presentation By: Fareed Yousuf Jawwad Khatri Muhammad Afnan SMI University
  • 2.  PLDs  Programmable Logic Devices (PLD)  General purpose chip for implementing circuits  Can be customized using programmable switches  Main types of PLDs  PLA  PAL  ROM  CPLD  FPGA  Custom chips: standard cells, sea of gates
  • 3.  PLD as a Black Box Logic gates and programmable switches Inputs (logic variables) Outputs (logic functions)
  • 4.  Programmable Logic Array (PLA)  Use to implement circuits in SOP form  The connections in the AND plane are programmable  The connections in the OR plane are programmable f1 AND plane OR plane Input buffers inverters and P1 Pk fm x1 x2 xn x1 x1 xn xn
  • 5.  Programmable Array Logic (PAL)  Also used to implement circuits in SOP form  The connections in the AND plane are programmable  The connections in the OR plane are NOT programmable f1 AND plane OR plane Input buffers inverters and P1 Pk fm x1 x2 xn x1 x1 xn xn fixed connections
  • 6.  Limitations of PLAs  PLAs come in various sizes  Typical size is 16 inputs, 32 product terms, 8 outputs  Each AND gate has large fan-in  this limits the number of inputs that can be provided in a PLA  16 inputs  316 = possible input combinations; only 32 permitted (since 32 AND gates) in a typical PLA  32 AND terms permitted  large fan-in for OR gates as well  This makes PLAs slower and slightly more expensive than some alternatives to be discussed shortly  8 outputs  could have shared minterms, but not required
  • 7.  Example Schematic of a PAL f1 P1 P2 f2 x1 x2 x3 AND plane P3 P4 f1 = x1x2x3'+x1'x2x3 f2 = x1'x2'+x1x2x3
  • 8.  Comparing PALs and PLAs  PALs have the same limitations as PLAs (small number of allowed AND terms) plus they have a fixed OR plane  less flexibility than PLAs  PALs are simpler to manufacture, cheaper, and faster (better performance)  PALs also often have extra circuitry connected to the output of each OR gate  The OR gate plus this circuitry is called a macrocell
  • 9.  Macrocell f1 back to AND plane D Q Clock Select Enable Flip-flop OR gate from PAL 0 1
  • 10.  Macrocell Functions  Enable = 0 can be used to allow the output pin for f1 to be used as an additional input pin to the PAL  Enable = 1, Select = 0 is normal for typical PAL operation  Enable = Select = 1 allows the PAL to synchronize the output changes with a clock pulse  The feedback to the AND plane provides for multi- level design f 1 back to AND plane D Q Clock Select Enable 0 1
  • 11.  Multi-Level Design with PALs  f = A'BC + A'B'C' + ABC' + AB'C = A'g + Ag'  where g = BC + B'C' and C = h below D Q Clock Sel = 0 En = 0 0 1 D Q Clock Select 0 1 D Q Clock Sel = 0 En = 1 0 1 A B h g f
  • 12.  ROM  A ROM (Read Only Memory) has a fixed AND plane and a programmable OR plane  Size of AND plane is 2n where n = number of input pins  Has an AND gate for every possible minterm so that all input combinations access a different AND gate  OR plane dictates function mapped by the ROM
  • 13.  Programming SPLDs  PLAs, PALs, and ROMs are also called SPLDs – Simple Programmable Logic Devices  SPLDs must be programmed so that the switches are in the correct places  CAD tools are usually used to do this  A fuse map is created by the CAD tool and then that map is downloaded to the device via a special programming unit  There are two basic types of programming techniques  Removable sockets on a PCB  In system programming (ISP) on a PCB  This approach is not very common for PLAs and PALs but it is quite common for more complex PLDs
  • 14.  An SPLD Programming Unit  The SPLD is removed from the PCB, placed into the unit and programmed there
  • 15.  Removable SPLD Socket Package  PLCC (plastic-leaded chip carrier) Printed circuit board PLCC socket soldered to the PCB
  • 16.  In System Programming (ISP)  Used when the SPLD cannot be removed from the PCB  A special cable and PCB connection are required to program the SPLD from an attached computer  Very common approach to programming more complex PLDs like CPLDs, FPGAs, etc.
  • 17.  CPLD  Complex Programmable Logic Devices (CPLD)  SPLDs (PLA, PAL) are limited in size due to the small number of input and output pins and the limited number of product terms  Combined number of inputs + outputs < 32 or so  CPLDs contain multiple circuit blocks on a single chip  Each block is like a PAL: PAL-like block  Connections are provided between PAL-like blocks via an interconnection network that is programmable  Each block is connected to an I/O block as well
  • 18.  Structure of a CPLD PAL-like block I/Oblock PAL-like block I/Oblock PAL-like block I/Oblock PAL-like block I/Oblock Interconnection wires
  • 19.  Internal Structure of a PAL-like Block  Includes macrocells  Usually about 16 each  Fixed OR planes  OR gates have fan-in between 5-20  XOR gates provide negation ability  XOR has a control input D Q D Q D Q PAL-like block PAL-like block
  • 20.  Programming a CPLD  CPLDs have many pins – large ones have > 200  Removal of CPLD from a PCB is difficult without breaking the pins  Use ISP (in system programming) to program the CPLD  JTAG (Joint Test Action Group) port used to connect the CPLD to a computer
  • 21.  FPGA  SPLDs and CPLDs are relatively small and useful for simple logic devices  Up to about 20000 gates  Field Programmable Gate Arrays (FPGA) can handle larger circuits  No AND/OR planes  Provide logic blocks, I/O blocks, and interconnection wires and switches  Logic blocks provide functionality  Interconnection switches allow logic blocks to be connected to each other and to the I/O pins
  • 22.  Structure of an FPGA I/O block I/O block I/Oblock I/Oblock logic block interconnection switch