SlideShare a Scribd company logo
1 of 33
Download to read offline
Architecture of CPLD and 
FPGA 
Prof. Anish Goel 
CPLD and FPGA Prof. Anish Goel
PLD 
 Problems by Using Basic Gates 
 Many components on PCB: 
 As no. of components rise, nodes interconnection complexity 
grow exponentially 
 Growth in interconnection will cause increase in interference, 
PCB size, PCB design cost, and manufacturing time 
CPLD and FPGA Prof. Anish Goel
PLD 
 The purpose of a PLD device is to permit elaborate digital logic 
designs to be implemented by the user in a single device. 
 Can be erased electrically and reprogrammed with a new design, 
making them very well suited for academic and prototyping 
 Types of Programmable Logic Devices 
 SPLDs (Simple Programmable Logic Devices) 
 ROM (Read-Only Memory) 
 PLA (Programmable Logic Array) 
 PAL (Programmable Array Logic) 
 GAL (Generic Array Logic) 
 CPLD (Complex Programmable Logic Device) 
 FPGA (Field-Programmable Gate Array) 
CPLD and FPGA Prof. Anish Goel
PLD 
 The first three varieties are quite similar to each other: 
 They all have an input connection matrix, which connects the 
inputs of the device to an array of AND-gates. 
 They all have an output connection matrix, which connect 
the outputs of the AND-gates to the inputs of OR-gates 
which drive the outputs of the device. 
 The gate array is significantly different and will be 
described later. 
CPLD and FPGA Prof. Anish Goel
PLD 
 The differences between the first three categories 
are these: 
 In a ROM, the input connection matrix is hardwired. The 
user can modify the output connection matrix. 
 In a PAL/GAL the output connection matrix is hardwired. 
The user can modify the input connection matrix. 
 In a PLA the user can modify both the input connection 
matrix and the output connection matrix. 
CPLD and FPGA Prof. Anish Goel
General structure of PLDs. 
CPLD and FPGA Prof. Anish Goel
Programming by blowing fuses. 
(a) Before programming. (b) After programming. 
CPLD and FPGA Prof. Anish Goel
OR - PLD Notation 
CPLD and FPGA Prof. Anish Goel
AND - PLD Notation 
CPLD and FPGA Prof. Anish Goel
PROM Notation 
CPLD and FPGA Prof. Anish Goel
Using a PROM for logic design 
(a) Truth table. (b) PROM realization. 
CPLD and FPGA Prof. Anish Goel
3 Input PLA… 
Implement 
f1 = A.B + A.C + B.C 
And 
f2 = A. B.C 
Using the given 
PLA circuit 
Inputs 
Outputs 
AND array 
OR array 
CPLD and FPGA Prof. Anish Goel
Function Implementation using PLA.. 
Inputs 
Outputs 
AND array 
OR array 
A B C 
f1 f2 
CPLD and FPGA Prof. Anish Goel
A simple four-input, three-output PAL device. 
CPLD and FPGA Prof. Anish Goel
An example of using a PAL device to realize two 
Boolean functions. (a) Karnaugh maps. (b) Realization. 
CPLD and FPGA Prof. Anish Goel
CPLD and FPGA Prof. Anish Goel
CPLD and FPGA Prof. Anish Goel 
Example CPLD
Structure of an FPGA 
CPLD and FPGA Prof. Anish Goel
CPLD and FPGA Prof. Anish Goel 
LUTs
Example 2 Input LUT 
CPLD and FPGA Prof. Anish Goel
3 Input LUT 
CPLD and FPGA Prof. Anish Goel
Example FPGA 
CPLD and FPGA Prof. Anish Goel
FPGA Implementation 
CPLD and FPGA Prof. Anish Goel
Another Example FPGA 
CPLD and FPGA Prof. Anish Goel
FPGA AND CPLD 
1. FPGA - Field-Programmable Gate Array. 
2. CPLD - Complex Programmable Logic Device 
3. FPGA and CPLD is an advance PLD. 
4. Support thousands of gate where as PLD only 
support hundreds of gates. 
CPLD and FPGA Prof. Anish Goel
What is an FPGA? 
 Before the advent of programmable logic, custom logic circuits were built at 
the board level using standard components, or at the gate level in expensive 
application-specific (custom) integrated circuits. 
 FPGA is an integrated circuit that contains many (64 to over 10,000) 
identical logic cells that can be viewed as standard components. Each logic 
cell can independently take on any one of a limited set of personalities. 
 Individual cells are interconnected by a matrix of wires and programmable 
switches. A user's design is implemented by specifying the simple logic 
function for each cell and selectively closing the switches in the 
interconnect matrix. 
 Array of logic cells and interconnect form a fabric of basic building blocks 
for logic circuits. Complex designs are created by combining these basic 
blocks to create the desired circuit 
CPLD and FPGA Prof. Anish Goel
FPGA architecture 
CPLD and FPGA Prof. Anish Goel
What does a logic cell do? 
 The logic cell architecture varies between different device families. 
 Each logic cell combines a few binary inputs (typically between 3 and 10) 
to one or two outputs according to a Boolean logic function specified in the 
user program . 
 In most families, the user also has the option of registering the 
combinatorial output of the cell, so that clocked logic can be easily 
implemented. 
 Cell's combinatorial logic may be physically implemented as a small look-up 
table memory (LUT) or as a set of multiplexers and gates. 
 LUT devices tend to be a bit more flexible and provide more inputs per cell 
than multiplexer cells at the expense of propagation delay. 
CPLD and FPGA Prof. Anish Goel
what does 'Field Programmable' mean? 
 Field Programmable means that the FPGA's function is defined by a user's 
program rather than by the manufacturer of the device. 
 A typical integrated circuit performs a particular function defined at the time 
of manufacture. In contrast, the FPGA's function is defined by a program 
written by someone other than the device manufacturer. 
 Depending on the particular device, the program is either 'burned' 
in permanently or semi-permanently as part of a board assembly process, or 
is loaded from an external memory each time the device is powered up. 
 This user programmability gives the user access to complex integrated 
designs without the high engineering costs associated with application 
specific integrated circuits. 
CPLD and FPGA Prof. Anish Goel
How are FPGA programs created? 
 Individually defining the many switch connections and cell logic functions 
would be a daunting task. 
 This task is handled by special software. The software translates a user's 
schematic diagrams or textual hardware description language code then 
places and routes the translated design. 
 Most of the software packages have hooks to allow the user to influence 
implementation, placement and routing to obtain better performance and 
utilization of the device. 
 Libraries of more complex function macros (eg. adders) further simplify the 
design process by providing common circuits that are already optimized for 
speed or area. 
CPLD and FPGA Prof. Anish Goel
FPGA 
 FPGA applications:- 
i. DSP 
ii. Software-defined radio 
iii. Aerospace 
iv. Defense system 
v. ASIC Prototyping 
vi. Medical Imaging 
vii. Computer vision 
viii. Speech Recognition 
ix. Cryptography 
x. Bioinformatic 
xi. And others. 
CPLD and FPGA Prof. Anish Goel
CPLD 
1. Complexity of CPLD is between FPGA and PLD. 
2. CPLD featured in common PLD:- 
i. Non-volatile configuration memory – does not need an external 
configuration PROM. 
ii. Routing constraints. Not for large and deeply layered logic. 
3. CPLD featured in common FPGA:- 
i. Large number of gates available. 
ii. Can include complicated feedback path. 
4. CPLD application:- 
i. Address coding 
ii. High performance control logic 
iii. Complex finite state machines 
CPLD and FPGA Prof. Anish Goel
CPLD 
5. CPLD architecture:- 
LAB – Logic Array Block / uses PALs 
PIA – Programmable Interconnect Array 
CPLD and FPGA Prof. Anish Goel

More Related Content

What's hot

Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array) Iffat Anjum
 
Fpga architectures and applications
Fpga architectures and applicationsFpga architectures and applications
Fpga architectures and applicationsSudhanshu Janwadkar
 
LPC 2148 ARM MICROCONTROLLER
LPC 2148 ARM MICROCONTROLLERLPC 2148 ARM MICROCONTROLLER
LPC 2148 ARM MICROCONTROLLERsravannunna24
 
Logic synthesis,flootplan&placement
Logic synthesis,flootplan&placementLogic synthesis,flootplan&placement
Logic synthesis,flootplan&placementshaik sharief
 
fpga programming
fpga programmingfpga programming
fpga programmingAnish Gupta
 
Physical design-complete
Physical design-completePhysical design-complete
Physical design-completeMurali Rai
 
Programmable Logic Devices Plds
Programmable Logic Devices PldsProgrammable Logic Devices Plds
Programmable Logic Devices PldsGaditek
 
Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notesDr.YNM
 
Programmable logic devices
Programmable logic devicesProgrammable logic devices
Programmable logic devicesAmmara Javed
 
Field programable gate array
Field programable gate arrayField programable gate array
Field programable gate arrayNeha Agarwal
 
Design challenges in physical design
Design challenges in physical designDesign challenges in physical design
Design challenges in physical designDeiptii Das
 
System partitioning in VLSI and its considerations
System partitioning in VLSI and its considerationsSystem partitioning in VLSI and its considerations
System partitioning in VLSI and its considerationsSubash John
 
Vlsi interview questions compilation
Vlsi interview questions compilationVlsi interview questions compilation
Vlsi interview questions compilationRajesh M
 

What's hot (20)

Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array)
 
Fpga
FpgaFpga
Fpga
 
FPGA
FPGAFPGA
FPGA
 
Fpga architectures and applications
Fpga architectures and applicationsFpga architectures and applications
Fpga architectures and applications
 
LPC 2148 ARM MICROCONTROLLER
LPC 2148 ARM MICROCONTROLLERLPC 2148 ARM MICROCONTROLLER
LPC 2148 ARM MICROCONTROLLER
 
Logic synthesis,flootplan&placement
Logic synthesis,flootplan&placementLogic synthesis,flootplan&placement
Logic synthesis,flootplan&placement
 
fpga programming
fpga programmingfpga programming
fpga programming
 
PAL And PLA ROM
PAL And PLA ROMPAL And PLA ROM
PAL And PLA ROM
 
Asic design flow
Asic design flowAsic design flow
Asic design flow
 
Vlsi design flow
Vlsi design flowVlsi design flow
Vlsi design flow
 
Uart
UartUart
Uart
 
Physical design-complete
Physical design-completePhysical design-complete
Physical design-complete
 
Programmable Logic Devices Plds
Programmable Logic Devices PldsProgrammable Logic Devices Plds
Programmable Logic Devices Plds
 
Vlsi physical design-notes
Vlsi physical design-notesVlsi physical design-notes
Vlsi physical design-notes
 
Programmable logic devices
Programmable logic devicesProgrammable logic devices
Programmable logic devices
 
Introduction to FPGAs
Introduction to FPGAsIntroduction to FPGAs
Introduction to FPGAs
 
Field programable gate array
Field programable gate arrayField programable gate array
Field programable gate array
 
Design challenges in physical design
Design challenges in physical designDesign challenges in physical design
Design challenges in physical design
 
System partitioning in VLSI and its considerations
System partitioning in VLSI and its considerationsSystem partitioning in VLSI and its considerations
System partitioning in VLSI and its considerations
 
Vlsi interview questions compilation
Vlsi interview questions compilationVlsi interview questions compilation
Vlsi interview questions compilation
 

Similar to Cpld fpga

Reconfigurable ICs
Reconfigurable ICsReconfigurable ICs
Reconfigurable ICsAnish Goel
 
L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)NAGASAI547
 
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).pptL12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).pptMikeTango5
 
Introduction to FPGA, VHDL
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL Amr Rashed
 
FPGA Intro
FPGA IntroFPGA Intro
FPGA Intronaito88
 
1. FPGA architectures.pdf
1. FPGA architectures.pdf1. FPGA architectures.pdf
1. FPGA architectures.pdfTesfuFiseha1
 
Module-5-Introduction-to-Programmable-Logic-PROF.pdf
Module-5-Introduction-to-Programmable-Logic-PROF.pdfModule-5-Introduction-to-Programmable-Logic-PROF.pdf
Module-5-Introduction-to-Programmable-Logic-PROF.pdfAnthonyTayong1
 
FPGA in outer space seminar report
FPGA in outer space seminar reportFPGA in outer space seminar report
FPGA in outer space seminar reportrahul kumar verma
 
Cpld and fpga mod vi
Cpld and fpga   mod viCpld and fpga   mod vi
Cpld and fpga mod viAgi George
 
Project report of 2016 Trainee_final
Project report of 2016 Trainee_finalProject report of 2016 Trainee_final
Project report of 2016 Trainee_finalAkash Chowdhury
 
FPGA Architecture and application
FPGA Architecture and application FPGA Architecture and application
FPGA Architecture and application ADARSHJKALATHIL
 
Architecture of fpg as and cplds
Architecture of fpg as and cpldsArchitecture of fpg as and cplds
Architecture of fpg as and cpldsmikeproud
 

Similar to Cpld fpga (20)

Reconfigurable ICs
Reconfigurable ICsReconfigurable ICs
Reconfigurable ICs
 
L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)L12 programmable+logic+devices+(pld)
L12 programmable+logic+devices+(pld)
 
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).pptL12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
L12_PROGRAMMABLE+LOGIC+DEVICES+(PLD).ppt
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
Introduction to FPGA, VHDL
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL
 
Convolution
ConvolutionConvolution
Convolution
 
Fpg as 11 body
Fpg as 11 bodyFpg as 11 body
Fpg as 11 body
 
FPGA Intro
FPGA IntroFPGA Intro
FPGA Intro
 
1. FPGA architectures.pdf
1. FPGA architectures.pdf1. FPGA architectures.pdf
1. FPGA architectures.pdf
 
Module-5-Introduction-to-Programmable-Logic-PROF.pdf
Module-5-Introduction-to-Programmable-Logic-PROF.pdfModule-5-Introduction-to-Programmable-Logic-PROF.pdf
Module-5-Introduction-to-Programmable-Logic-PROF.pdf
 
FPGA in outer space seminar report
FPGA in outer space seminar reportFPGA in outer space seminar report
FPGA in outer space seminar report
 
Dr.D.RUKMANIDEVI PPT.ppt
Dr.D.RUKMANIDEVI PPT.pptDr.D.RUKMANIDEVI PPT.ppt
Dr.D.RUKMANIDEVI PPT.ppt
 
Cpld and fpga mod vi
Cpld and fpga   mod viCpld and fpga   mod vi
Cpld and fpga mod vi
 
VLSI PLDS pla, pal
VLSI PLDS pla, palVLSI PLDS pla, pal
VLSI PLDS pla, pal
 
FIELD PROGRAMMABLE GATE ARRAYS AND THEIR APPLICATIONS
FIELD PROGRAMMABLE GATE ARRAYS AND THEIR APPLICATIONSFIELD PROGRAMMABLE GATE ARRAYS AND THEIR APPLICATIONS
FIELD PROGRAMMABLE GATE ARRAYS AND THEIR APPLICATIONS
 
Project report of 2016 Trainee_final
Project report of 2016 Trainee_finalProject report of 2016 Trainee_final
Project report of 2016 Trainee_final
 
FPGA Architecture and application
FPGA Architecture and application FPGA Architecture and application
FPGA Architecture and application
 
Fpga in space
Fpga in spaceFpga in space
Fpga in space
 
ASIC VS FPGA.ppt
ASIC VS FPGA.pptASIC VS FPGA.ppt
ASIC VS FPGA.ppt
 
Architecture of fpg as and cplds
Architecture of fpg as and cpldsArchitecture of fpg as and cplds
Architecture of fpg as and cplds
 

More from anishgoel

Computer Organization
Computer OrganizationComputer Organization
Computer Organizationanishgoel
 
Learning vhdl by examples
Learning vhdl by examplesLearning vhdl by examples
Learning vhdl by examplesanishgoel
 
Dot matrix module interface wit Raspberry Pi
Dot matrix module interface wit Raspberry PiDot matrix module interface wit Raspberry Pi
Dot matrix module interface wit Raspberry Pianishgoel
 
Input interface with Raspberry pi
Input interface with Raspberry piInput interface with Raspberry pi
Input interface with Raspberry pianishgoel
 
Learning Python for Raspberry Pi
Learning Python for Raspberry PiLearning Python for Raspberry Pi
Learning Python for Raspberry Pianishgoel
 
Raspberry Pi
Raspberry PiRaspberry Pi
Raspberry Pianishgoel
 
learning vhdl by examples
learning vhdl by exampleslearning vhdl by examples
learning vhdl by examplesanishgoel
 
Digital System Design Basics
Digital System Design BasicsDigital System Design Basics
Digital System Design Basicsanishgoel
 
digital design of communication systems
digital design of communication systemsdigital design of communication systems
digital design of communication systemsanishgoel
 
Rtos concepts
Rtos conceptsRtos concepts
Rtos conceptsanishgoel
 
8051 Microcontroller Timer
8051 Microcontroller Timer8051 Microcontroller Timer
8051 Microcontroller Timeranishgoel
 
8051 Microcontroller I/O ports
8051 Microcontroller I/O ports8051 Microcontroller I/O ports
8051 Microcontroller I/O portsanishgoel
 
Serial Communication Interfaces
Serial Communication InterfacesSerial Communication Interfaces
Serial Communication Interfacesanishgoel
 
Embedded systems ppt iv part d
Embedded systems ppt iv   part dEmbedded systems ppt iv   part d
Embedded systems ppt iv part danishgoel
 
Embedded systems ppt iv part c
Embedded systems ppt iv   part cEmbedded systems ppt iv   part c
Embedded systems ppt iv part canishgoel
 
Embedded systems ppt iv part b
Embedded systems ppt iv   part bEmbedded systems ppt iv   part b
Embedded systems ppt iv part banishgoel
 
Embedded systems ppt ii
Embedded systems ppt iiEmbedded systems ppt ii
Embedded systems ppt iianishgoel
 
Embedded systems ppt iii
Embedded systems ppt iiiEmbedded systems ppt iii
Embedded systems ppt iiianishgoel
 
Embedded systems ppt iv part a
Embedded systems ppt iv   part aEmbedded systems ppt iv   part a
Embedded systems ppt iv part aanishgoel
 
Embedded systems ppt i
Embedded systems ppt iEmbedded systems ppt i
Embedded systems ppt ianishgoel
 

More from anishgoel (20)

Computer Organization
Computer OrganizationComputer Organization
Computer Organization
 
Learning vhdl by examples
Learning vhdl by examplesLearning vhdl by examples
Learning vhdl by examples
 
Dot matrix module interface wit Raspberry Pi
Dot matrix module interface wit Raspberry PiDot matrix module interface wit Raspberry Pi
Dot matrix module interface wit Raspberry Pi
 
Input interface with Raspberry pi
Input interface with Raspberry piInput interface with Raspberry pi
Input interface with Raspberry pi
 
Learning Python for Raspberry Pi
Learning Python for Raspberry PiLearning Python for Raspberry Pi
Learning Python for Raspberry Pi
 
Raspberry Pi
Raspberry PiRaspberry Pi
Raspberry Pi
 
learning vhdl by examples
learning vhdl by exampleslearning vhdl by examples
learning vhdl by examples
 
Digital System Design Basics
Digital System Design BasicsDigital System Design Basics
Digital System Design Basics
 
digital design of communication systems
digital design of communication systemsdigital design of communication systems
digital design of communication systems
 
Rtos concepts
Rtos conceptsRtos concepts
Rtos concepts
 
8051 Microcontroller Timer
8051 Microcontroller Timer8051 Microcontroller Timer
8051 Microcontroller Timer
 
8051 Microcontroller I/O ports
8051 Microcontroller I/O ports8051 Microcontroller I/O ports
8051 Microcontroller I/O ports
 
Serial Communication Interfaces
Serial Communication InterfacesSerial Communication Interfaces
Serial Communication Interfaces
 
Embedded systems ppt iv part d
Embedded systems ppt iv   part dEmbedded systems ppt iv   part d
Embedded systems ppt iv part d
 
Embedded systems ppt iv part c
Embedded systems ppt iv   part cEmbedded systems ppt iv   part c
Embedded systems ppt iv part c
 
Embedded systems ppt iv part b
Embedded systems ppt iv   part bEmbedded systems ppt iv   part b
Embedded systems ppt iv part b
 
Embedded systems ppt ii
Embedded systems ppt iiEmbedded systems ppt ii
Embedded systems ppt ii
 
Embedded systems ppt iii
Embedded systems ppt iiiEmbedded systems ppt iii
Embedded systems ppt iii
 
Embedded systems ppt iv part a
Embedded systems ppt iv   part aEmbedded systems ppt iv   part a
Embedded systems ppt iv part a
 
Embedded systems ppt i
Embedded systems ppt iEmbedded systems ppt i
Embedded systems ppt i
 

Recently uploaded

High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Communityprachaibot
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfisabel213075
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxStephen Sitton
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptxmohitesoham12
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionSneha Padhiar
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substationstephanwindworld
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmDeepika Walanjkar
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating SystemRashmi Bhat
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming languageSmritiSharma901052
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosVictor Morales
 
signals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsignals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsapna80328
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdfCaalaaAbdulkerim
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...Erbil Polytechnic University
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfManish Kumar
 

Recently uploaded (20)

High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Community
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdf
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptx
 
Python Programming for basic beginners.pptx
Python Programming for basic beginners.pptxPython Programming for basic beginners.pptx
Python Programming for basic beginners.pptx
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based question
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substation
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating System
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming language
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitos
 
signals in triangulation .. ...Surveying
signals in triangulation .. ...Surveyingsignals in triangulation .. ...Surveying
signals in triangulation .. ...Surveying
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdf
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
 

Cpld fpga

  • 1. Architecture of CPLD and FPGA Prof. Anish Goel CPLD and FPGA Prof. Anish Goel
  • 2. PLD  Problems by Using Basic Gates  Many components on PCB:  As no. of components rise, nodes interconnection complexity grow exponentially  Growth in interconnection will cause increase in interference, PCB size, PCB design cost, and manufacturing time CPLD and FPGA Prof. Anish Goel
  • 3. PLD  The purpose of a PLD device is to permit elaborate digital logic designs to be implemented by the user in a single device.  Can be erased electrically and reprogrammed with a new design, making them very well suited for academic and prototyping  Types of Programmable Logic Devices  SPLDs (Simple Programmable Logic Devices)  ROM (Read-Only Memory)  PLA (Programmable Logic Array)  PAL (Programmable Array Logic)  GAL (Generic Array Logic)  CPLD (Complex Programmable Logic Device)  FPGA (Field-Programmable Gate Array) CPLD and FPGA Prof. Anish Goel
  • 4. PLD  The first three varieties are quite similar to each other:  They all have an input connection matrix, which connects the inputs of the device to an array of AND-gates.  They all have an output connection matrix, which connect the outputs of the AND-gates to the inputs of OR-gates which drive the outputs of the device.  The gate array is significantly different and will be described later. CPLD and FPGA Prof. Anish Goel
  • 5. PLD  The differences between the first three categories are these:  In a ROM, the input connection matrix is hardwired. The user can modify the output connection matrix.  In a PAL/GAL the output connection matrix is hardwired. The user can modify the input connection matrix.  In a PLA the user can modify both the input connection matrix and the output connection matrix. CPLD and FPGA Prof. Anish Goel
  • 6. General structure of PLDs. CPLD and FPGA Prof. Anish Goel
  • 7. Programming by blowing fuses. (a) Before programming. (b) After programming. CPLD and FPGA Prof. Anish Goel
  • 8. OR - PLD Notation CPLD and FPGA Prof. Anish Goel
  • 9. AND - PLD Notation CPLD and FPGA Prof. Anish Goel
  • 10. PROM Notation CPLD and FPGA Prof. Anish Goel
  • 11. Using a PROM for logic design (a) Truth table. (b) PROM realization. CPLD and FPGA Prof. Anish Goel
  • 12. 3 Input PLA… Implement f1 = A.B + A.C + B.C And f2 = A. B.C Using the given PLA circuit Inputs Outputs AND array OR array CPLD and FPGA Prof. Anish Goel
  • 13. Function Implementation using PLA.. Inputs Outputs AND array OR array A B C f1 f2 CPLD and FPGA Prof. Anish Goel
  • 14. A simple four-input, three-output PAL device. CPLD and FPGA Prof. Anish Goel
  • 15. An example of using a PAL device to realize two Boolean functions. (a) Karnaugh maps. (b) Realization. CPLD and FPGA Prof. Anish Goel
  • 16. CPLD and FPGA Prof. Anish Goel
  • 17. CPLD and FPGA Prof. Anish Goel Example CPLD
  • 18. Structure of an FPGA CPLD and FPGA Prof. Anish Goel
  • 19. CPLD and FPGA Prof. Anish Goel LUTs
  • 20. Example 2 Input LUT CPLD and FPGA Prof. Anish Goel
  • 21. 3 Input LUT CPLD and FPGA Prof. Anish Goel
  • 22. Example FPGA CPLD and FPGA Prof. Anish Goel
  • 23. FPGA Implementation CPLD and FPGA Prof. Anish Goel
  • 24. Another Example FPGA CPLD and FPGA Prof. Anish Goel
  • 25. FPGA AND CPLD 1. FPGA - Field-Programmable Gate Array. 2. CPLD - Complex Programmable Logic Device 3. FPGA and CPLD is an advance PLD. 4. Support thousands of gate where as PLD only support hundreds of gates. CPLD and FPGA Prof. Anish Goel
  • 26. What is an FPGA?  Before the advent of programmable logic, custom logic circuits were built at the board level using standard components, or at the gate level in expensive application-specific (custom) integrated circuits.  FPGA is an integrated circuit that contains many (64 to over 10,000) identical logic cells that can be viewed as standard components. Each logic cell can independently take on any one of a limited set of personalities.  Individual cells are interconnected by a matrix of wires and programmable switches. A user's design is implemented by specifying the simple logic function for each cell and selectively closing the switches in the interconnect matrix.  Array of logic cells and interconnect form a fabric of basic building blocks for logic circuits. Complex designs are created by combining these basic blocks to create the desired circuit CPLD and FPGA Prof. Anish Goel
  • 27. FPGA architecture CPLD and FPGA Prof. Anish Goel
  • 28. What does a logic cell do?  The logic cell architecture varies between different device families.  Each logic cell combines a few binary inputs (typically between 3 and 10) to one or two outputs according to a Boolean logic function specified in the user program .  In most families, the user also has the option of registering the combinatorial output of the cell, so that clocked logic can be easily implemented.  Cell's combinatorial logic may be physically implemented as a small look-up table memory (LUT) or as a set of multiplexers and gates.  LUT devices tend to be a bit more flexible and provide more inputs per cell than multiplexer cells at the expense of propagation delay. CPLD and FPGA Prof. Anish Goel
  • 29. what does 'Field Programmable' mean?  Field Programmable means that the FPGA's function is defined by a user's program rather than by the manufacturer of the device.  A typical integrated circuit performs a particular function defined at the time of manufacture. In contrast, the FPGA's function is defined by a program written by someone other than the device manufacturer.  Depending on the particular device, the program is either 'burned' in permanently or semi-permanently as part of a board assembly process, or is loaded from an external memory each time the device is powered up.  This user programmability gives the user access to complex integrated designs without the high engineering costs associated with application specific integrated circuits. CPLD and FPGA Prof. Anish Goel
  • 30. How are FPGA programs created?  Individually defining the many switch connections and cell logic functions would be a daunting task.  This task is handled by special software. The software translates a user's schematic diagrams or textual hardware description language code then places and routes the translated design.  Most of the software packages have hooks to allow the user to influence implementation, placement and routing to obtain better performance and utilization of the device.  Libraries of more complex function macros (eg. adders) further simplify the design process by providing common circuits that are already optimized for speed or area. CPLD and FPGA Prof. Anish Goel
  • 31. FPGA  FPGA applications:- i. DSP ii. Software-defined radio iii. Aerospace iv. Defense system v. ASIC Prototyping vi. Medical Imaging vii. Computer vision viii. Speech Recognition ix. Cryptography x. Bioinformatic xi. And others. CPLD and FPGA Prof. Anish Goel
  • 32. CPLD 1. Complexity of CPLD is between FPGA and PLD. 2. CPLD featured in common PLD:- i. Non-volatile configuration memory – does not need an external configuration PROM. ii. Routing constraints. Not for large and deeply layered logic. 3. CPLD featured in common FPGA:- i. Large number of gates available. ii. Can include complicated feedback path. 4. CPLD application:- i. Address coding ii. High performance control logic iii. Complex finite state machines CPLD and FPGA Prof. Anish Goel
  • 33. CPLD 5. CPLD architecture:- LAB – Logic Array Block / uses PALs PIA – Programmable Interconnect Array CPLD and FPGA Prof. Anish Goel