SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
Programmable Logic Devices


           Prof. Anish Goel
Programmable Logic Devices

       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

2                               Programmable Logic Devices   ANISH GOEL
       PLD as a Black Box




                                   Logic gates
             Inputs                   and                              Outputs
        (logic variables)         programmable                  (logic functions)
                                    switches




    3                        Programmable Logic Devices   ANISH GOEL
       Programmable Logic Array (PLA)

           Use to implement                   x1 x2       xn
            circuits in SOP form

           The connections in                  Input buffers
                                                    and
            the AND plane are                     inverters
            programmable
                                          x1 x1         xn xn

           The connections in                                     P1
            the OR plane are
            programmable                        AND plane                    OR plane
                                                                   Pk




    4                              Programmable Logic Devices   ANISH GOEL   f1   fm
       Gate Level Version of PLA
                           x1     x2       x3


                                                                  Programmable
                                                                   connections

                                                                          OR plane
f1 = x1x2+x1x3'+x1'x2'x3                                     P1


f2 = x1x2+x1'x2'x3+x1x3
                                                             P2



                                                             P3



                                                             P4



                                       AND plane

                                                                     f1         f2
     5                          Programmable Logic Devices   ANISH GOEL
       Customary Schematic of a PLA

                              x1    x2        x3




                                                                             OR plane
 f1 = x1x2+x1x3'+x1'x2'x3                                        P1

 f2 = x1x2+x1'x2'x3+x1x3
                                                                 P2


                                                                 P3


                                                                 P4



x marks the connections left in          AND plane
place after programming
                                                                        f1         f2

       6                           Programmable Logic Devices   ANISH GOEL
       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  216 = 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                                      Programmable Logic Devices   ANISH GOEL
       Programmable Array Logic (PAL)

           Also used to implement          x1 x2       xn
            circuits in SOP form

                                             Input buffers
           The connections in                   and
                                               inverters             fixed connections
            the AND plane are
            programmable                x1 x1         xn xn

                                                                P1
           The connections in
                                              AND plane                    OR plane
            the OR plane are                                    Pk
            NOT programmable

                                                                           f1   fm

    8                            Programmable Logic Devices   ANISH GOEL
       Example Schematic of a PAL

                          x1    x2        x3




f1 = x1x2x3'+x1'x2x3
                                                                P1
f2 = x1'x2'+x1x2x3
                                                                          f1
                                                                P2


                                                                P3

                                                                          f2
                                                                P4



                                     AND plane


      9                         Programmable Logic Devices   ANISH GOEL
    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



    10                               Programmable Logic Devices   ANISH GOEL
    Macrocell

                                                      Select
                                                                   Enable
OR gate from PAL                                        0
                                                                            f1
                                                        1



                                    D    Q
                                   Flip-flop
                         Clock




     back to AND plane



    11                           Programmable Logic Devices   ANISH GOEL
    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                                      Select
                                                                                 Enable
                                                                          0
                                                                                          f1
                                                                          1

        Enable = Select = 1 allows                              D Q
         the PAL to synchronize the                      Clock
         output changes with a clock
         pulse
                                             back to AND plane


        The feedback to the AND plane provides for multi-level
         design

    12                        Programmable Logic Devices   ANISH GOEL
    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
         A      B
                                                                Sel = 0
                                                                          En = 0
                                                                  0
                                                                  1
                                                                                   h

                                                        D Q
                                                                Sel = 0
                                                Clock                     En = 1
                                                                  0
                                                                                   g
                                                                  1

                                                        D Q
                                                                Select
                                                Clock
                                                                  0
                                                                                   f
                                                                  1

                                                        D Q

                                                Clock

    13                           Programmable Logic Devices   ANISH GOEL
    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




    14                              Programmable Logic Devices   ANISH GOEL
    4x4 ROM

        22x4 bit ROM has 4 addresses that are decoded



                        2-to-4 decoder

            a0


            a1




                                          d3     d2      d1      d0

    15                                   Programmable Logic Devices   ANISH GOEL
    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


    16                              Programmable Logic Devices   ANISH GOEL
    An SPLD Programming Unit




        The SPLD is removed from the PCB, placed into the unit
         and programmed there

    17                        Programmable Logic Devices   ANISH GOEL
    Removable SPLD Socket Package

        PLCC (plastic-leaded chip carrier)


                                                                      PLCC socket soldered to
                                                                      the PCB




                                                                  d
                                                               oar
                                                        it b
                                                   i rcu
                                                 dc
                                              nte
                                       Pr i




    18                        Programmable Logic Devices                ANISH GOEL
    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.




    19                      Programmable Logic Devices   ANISH GOEL
    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


    20                            Programmable Logic Devices   ANISH GOEL
    Structure of a CPLD

          I/O block




                                                                    I/O block
                      PAL-like                 PAL-like
                       block                    block




                          Interconnection wires
          I/O block




                                                                    I/O block
                      PAL-like                 PAL-like
                       block                    block


    21                           Programmable Logic Devices   ANISH GOEL
    Internal Structure of a PAL-like Block

        Includes macrocells
            Usually about 16 each


        Fixed OR planes                            PAL-like block
            OR gates have fan-in
             between 5-20
                                                    PAL-like block

        XOR gates provide                                           DQ
         negation ability
                                                                     DQ
            XOR has a control
             input
                                                                     DQ




    22                               Programmable Logic Devices   ANISH GOEL
    More on PAL-like Blocks

        CPLD pins are provided to control XOR, MUX, and tri-state
         gates

        When tri-state gate is disabled, the corresponding output
         pin can be used as an input pin
            The associated PAL-like block is then useless


        The AND plane and interconnection network are
         programmable

        Commercial CPLDs have between 2-100 PAL-like blocks

    23                            Programmable Logic Devices   ANISH GOEL
    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




    24                           Programmable Logic Devices   ANISH GOEL
    Example CPLD

        Use a CPLD to implement the function
            f = x1x3x6' + x1x4x5x6' + x2x3x7 + x2x4x5x7
               (from interconnection wires)
          x1      x2    x3    x4     x5       x6   x7   unused




                                                                     PAL-like block
                                                                                            0   1
                                                                          0
                                                                                                    f
                                                                                      D Q




    25                                                  Programmable Logic Devices    ANISH GOEL
    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

    26                            Programmable Logic Devices   ANISH GOEL
    Structure of an FPGA

                                       I/O block


interconnection
switch
                  I/O block




                                                                  I/O block
  logic block                          I/O block
       27                     Programmable Logic Devices   ANISH GOEL
    LUTs

        Logic blocks are implemented using a lookup table (LUT)
            Small number of inputs, one output
            Contains storage cells that can be loaded with the desired values

            A 2 input LUT uses 3 MUXes
             to implement any desired function           x1
             of 2 variables
                                                                   0/1
                Shannon's expansion at work!
                                                                   0/1
                                                                                 f
                                                                   0/1
                                                                   0/1
                                                         x2


    28                             Programmable Logic Devices   ANISH GOEL
    Example 2 Input LUT


         x1   x2   f
         0    0    1        f = x1'x2' + x1x2, or using Shannon's expansion:
         0    1    0
                            f = x1'(x2') + x1(x2)
         1    0    0
                              = x1'(x2'(1) + x2(0)) + x1(x2'(0) + x2(1))
         1    1    1
                       x1

                               1
                               0
                                                              f
                               0
                               1

                       x2

    29                          Programmable Logic Devices   ANISH GOEL
    3 Input LUT
                                 x1
        7 2x1 MUXes and         x2
         8 storage cells are
         required                          0/1
                                           0/1

        Commercial LUTs have              0/1
         4-5 inputs, and 16-32             0/1
                                                                         f
         storage cells                     0/1
                                           0/1
                                           0/1
                                           0/1
                                 x3

    30                         Programmable Logic Devices   ANISH GOEL
    Programming an FPGA

        ISP method is used

        LUTs contain volatile storage cells
            None of the other PLD technologies are volatile
            FPGA storage cells are loaded via a PROM when power is first applied


        The UP2 Education Board by Altera contains a JTAG port, a
         MAX 7000 CPLD, and a FLEX 10K FPGA
            The MAX 7000 CPLD chip is EPM7128SLC84-7
            EPM7  MAX 7000 family; 128 macrocells; LC84  84 pin PLCC
             package; 7  speed grade


    31                             Programmable Logic Devices   ANISH GOEL
    Example FPGA

        Use an FPGA with 2 input LUTS to implement the function f
         = x1x2 + x2'x3             x      3           f




          f1   = x 1x 2
                            x1
            f2 = x2'x3
                                           x1 0                 x2 0
            f = f1 + f 2                     0   f1               1   f2
                                              0                    0
                            x2             x2                   x3
                                              1                    0




                                                                f1 0
                                                                   1   f
                                                                   1
                                                                f2
                                                                   1




    32                           Programmable Logic Devices   ANISH GOEL
    Another Example FPGA

        Use an FPGA with 2 input LUTS to implement the function f
         = x1x3x6' + x1x4x5x6' + x2x3x7 + x2x4x5x7

            Fan-in of expression is too large for FPGA (this was simple to do in a
             CPLD)

            Factor f to get sub-expressions with max fan-in = 2
                f = x1x6'(x3 + x4x5) + x2x7(x3 + x4x5)
                   = (x1x6' + x2x7)(x3 + x4x5)


            Could use Shannon's expansion instead
                Goal is to build expressions out of 2-input LUTs


    33                               Programmable Logic Devices   ANISH GOEL
    FPGA Implementation

        f = (x1x6' + x2x7)(xx3 + x4x5)        x5                   x3
                               4                                          f




            x1

                        x1 0                    x4 0                x3 0
                           0   A                   0 C                 1 E
            x6          x6 1                    x5 0                C 1
                                                                       1
                           0                       1




            x2

                        x2 0                    A   0               D 0
                           0   B                    1 D               0   f
            x7          x7 0                    B
                                                    1                 0
                                                                    E 1
                           1                        1




    34                             Programmable Logic Devices   ANISH GOEL
    Custom Chips

        PLDs are limited by number of programmable switches
            Consume space
            Reduce speed


        Custom chips are created from scratch
            Expensive  used when high speed is required, volume sales are
             expected, and chip size is small but with high density of gates
            ASICs (Application Specific Integrated Circuits) are custom chips that
             use a standard cell layout to reduce design costs




    35                              Programmable Logic Devices   ANISH GOEL
    Standard Cells

        Rows of logic gates can be connected by wires in the routing
         channels
            Designers (via CAD tools) select prefab gates from a library and place
             them in rows
            Interconnections are made by wires in routing channels
                Multiple layers may be used to avoid short circuiting
                A hard-wired connection between layers is called a via



                     x1                                                      f2

                     x2

                     x3
                                                                             f1




    36                                  Programmable Logic Devices   ANISH GOEL
    Example: Standard Cells

      f1   = x1x2 + x1'x2'x3 + x1x3'
        f2 = x1x2 + x1'x2'x3 + x1x3



         x1                                                                 f2

         x2
         x3
                                                                            f1




    37                            Programmable Logic Devices   ANISH GOEL
    Sea of Gates Gate Array

        A Sea of Gates gate array is just like a standard cell except
         all gates are of the same type
            Interconnections are run in channels and use multiple layers
            Cheaper to manufacture due to regularity




    38                            Programmable Logic Devices   ANISH GOEL
    Example: Sea of Gates

        f1   = x2x3' + x1x3                                             black  bottom
                                                                         layer channels




red  top layer channels

      39                       Programmable Logic Devices   ANISH GOEL
    Digital Logic Technology Tradeoffs




                                                               Full custom
                                                               VLSI design


                                                       ASICs
Speed / Density /
Complexity / Likely
Market Volume                          CPLDs
                                       FPGAs


                           PLDs



                         Engineering cost / Time to develop
      40                  Programmable Logic Devices   ANISH GOEL

Weitere ähnliche Inhalte

Was ist angesagt?

APB protocol v1.0
APB protocol v1.0APB protocol v1.0
APB protocol v1.0Azad Mishra
 
Lecture11 combinational logic dynamics
Lecture11 combinational logic dynamicsLecture11 combinational logic dynamics
Lecture11 combinational logic dynamicsvidhya DS
 
4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design Flow4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design FlowMaurizio Donna
 
carry look ahead adder
carry look ahead addercarry look ahead adder
carry look ahead adderASHISH MANI
 
DOMINO LOGIC CIRCUIT (VLSI)
DOMINO LOGIC CIRCUIT (VLSI)DOMINO LOGIC CIRCUIT (VLSI)
DOMINO LOGIC CIRCUIT (VLSI)AmiBokasoda
 
1.FPGA for dummies: Basic FPGA architecture
1.FPGA for dummies: Basic FPGA architecture 1.FPGA for dummies: Basic FPGA architecture
1.FPGA for dummies: Basic FPGA architecture Maurizio Donna
 
Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array) Iffat Anjum
 
Divide by N clock
Divide by N clockDivide by N clock
Divide by N clockMantra VLSI
 

Was ist angesagt? (20)

Verilog tutorial
Verilog tutorialVerilog tutorial
Verilog tutorial
 
VERILOG CODE FOR Adder
VERILOG CODE FOR AdderVERILOG CODE FOR Adder
VERILOG CODE FOR Adder
 
APB protocol v1.0
APB protocol v1.0APB protocol v1.0
APB protocol v1.0
 
Actel fpga
Actel fpgaActel fpga
Actel fpga
 
Lecture11 combinational logic dynamics
Lecture11 combinational logic dynamicsLecture11 combinational logic dynamics
Lecture11 combinational logic dynamics
 
Pcie basic
Pcie basicPcie basic
Pcie basic
 
Verilog lab manual (ECAD and VLSI Lab)
Verilog lab manual (ECAD and VLSI Lab)Verilog lab manual (ECAD and VLSI Lab)
Verilog lab manual (ECAD and VLSI Lab)
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design Flow4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design Flow
 
ARM CORTEX M3 PPT
ARM CORTEX M3 PPTARM CORTEX M3 PPT
ARM CORTEX M3 PPT
 
carry look ahead adder
carry look ahead addercarry look ahead adder
carry look ahead adder
 
DOMINO LOGIC CIRCUIT (VLSI)
DOMINO LOGIC CIRCUIT (VLSI)DOMINO LOGIC CIRCUIT (VLSI)
DOMINO LOGIC CIRCUIT (VLSI)
 
1.FPGA for dummies: Basic FPGA architecture
1.FPGA for dummies: Basic FPGA architecture 1.FPGA for dummies: Basic FPGA architecture
1.FPGA for dummies: Basic FPGA architecture
 
Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array)
 
Report on VLSI
Report on VLSIReport on VLSI
Report on VLSI
 
Xilinx 4000 series
Xilinx 4000 seriesXilinx 4000 series
Xilinx 4000 series
 
Verilog hdl
Verilog hdlVerilog hdl
Verilog hdl
 
Asic design flow
Asic design flowAsic design flow
Asic design flow
 
cplds
cpldscplds
cplds
 
Divide by N clock
Divide by N clockDivide by N clock
Divide by N clock
 

Andere mochten auch

Programmable logic device (PLD)
Programmable logic device (PLD)Programmable logic device (PLD)
Programmable logic device (PLD)Sɐɐp ɐɥɯǝp
 
PLD’s (programmable logic device)
PLD’s (programmable logic device)PLD’s (programmable logic device)
PLD’s (programmable logic device)Carlos Solano
 
Programmable Logic Devices Plds
Programmable Logic Devices PldsProgrammable Logic Devices Plds
Programmable Logic Devices PldsGaditek
 
Basic circuit or cad
Basic circuit or cadBasic circuit or cad
Basic circuit or cadanishgoel
 
8051 Microcontroller Timer
8051 Microcontroller Timer8051 Microcontroller Timer
8051 Microcontroller Timeranishgoel
 
Llpc2148 sci
Llpc2148 sciLlpc2148 sci
Llpc2148 scianishgoel
 
8051 Microcontroller I/O ports
8051 Microcontroller I/O ports8051 Microcontroller I/O ports
8051 Microcontroller I/O portsanishgoel
 
Embedded systems ppt iv part c
Embedded systems ppt iv   part cEmbedded systems ppt iv   part c
Embedded systems ppt iv part canishgoel
 
Serial Communication Interfaces
Serial Communication InterfacesSerial Communication Interfaces
Serial Communication Interfacesanishgoel
 
Design options for digital systems
Design options for digital systemsDesign options for digital systems
Design options for digital systemsdennis gookyi
 
programmable logic devices part 1
programmable logic devices part 1programmable logic devices part 1
programmable logic devices part 1Kundan Gupta
 
Nios2 and ip core
Nios2 and ip coreNios2 and ip core
Nios2 and ip coreanishgoel
 
Operating systems
Operating systemsOperating systems
Operating systemsanishgoel
 
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 iv part a
Embedded systems ppt iv   part aEmbedded systems ppt iv   part a
Embedded systems ppt iv part aanishgoel
 

Andere mochten auch (20)

Programmable logic device (PLD)
Programmable logic device (PLD)Programmable logic device (PLD)
Programmable logic device (PLD)
 
PLD’s (programmable logic device)
PLD’s (programmable logic device)PLD’s (programmable logic device)
PLD’s (programmable logic device)
 
Programmable Logic Devices Plds
Programmable Logic Devices PldsProgrammable Logic Devices Plds
Programmable Logic Devices Plds
 
Basic circuit or cad
Basic circuit or cadBasic circuit or cad
Basic circuit or cad
 
8051 Microcontroller Timer
8051 Microcontroller Timer8051 Microcontroller Timer
8051 Microcontroller Timer
 
Llpc2148 sci
Llpc2148 sciLlpc2148 sci
Llpc2148 sci
 
8051 Microcontroller I/O ports
8051 Microcontroller I/O ports8051 Microcontroller I/O ports
8051 Microcontroller I/O ports
 
Embedded systems ppt iv part c
Embedded systems ppt iv   part cEmbedded systems ppt iv   part c
Embedded systems ppt iv part c
 
Gre edited
Gre editedGre edited
Gre edited
 
Cpld fpga
Cpld fpgaCpld fpga
Cpld fpga
 
Lpc2148 i2c
Lpc2148 i2cLpc2148 i2c
Lpc2148 i2c
 
Arm
ArmArm
Arm
 
Serial Communication Interfaces
Serial Communication InterfacesSerial Communication Interfaces
Serial Communication Interfaces
 
Design options for digital systems
Design options for digital systemsDesign options for digital systems
Design options for digital systems
 
programmable logic devices part 1
programmable logic devices part 1programmable logic devices part 1
programmable logic devices part 1
 
Fpga 03-cpld-and-fpga
Fpga 03-cpld-and-fpgaFpga 03-cpld-and-fpga
Fpga 03-cpld-and-fpga
 
Nios2 and ip core
Nios2 and ip coreNios2 and ip core
Nios2 and ip core
 
Operating systems
Operating systemsOperating systems
Operating systems
 
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 iv part a
Embedded systems ppt iv   part aEmbedded systems ppt iv   part a
Embedded systems ppt iv part a
 

Mehr von 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
 
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 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 i
Embedded systems ppt iEmbedded systems ppt i
Embedded systems ppt ianishgoel
 
Keil tutorial
Keil tutorialKeil tutorial
Keil tutorialanishgoel
 
ARM 7 LPC 2148 lecture
ARM 7 LPC 2148 lectureARM 7 LPC 2148 lecture
ARM 7 LPC 2148 lectureanishgoel
 

Mehr von anishgoel (17)

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
 
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 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 i
Embedded systems ppt iEmbedded systems ppt i
Embedded systems ppt i
 
Keil tutorial
Keil tutorialKeil tutorial
Keil tutorial
 
ESD Lab1
ESD Lab1ESD Lab1
ESD Lab1
 
ARM 7 LPC 2148 lecture
ARM 7 LPC 2148 lectureARM 7 LPC 2148 lecture
ARM 7 LPC 2148 lecture
 

Kürzlich hochgeladen

THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 

Kürzlich hochgeladen (20)

THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 

PLD's

  • 1. Programmable Logic Devices Prof. Anish Goel
  • 2. Programmable Logic Devices  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 2 Programmable Logic Devices ANISH GOEL
  • 3. PLD as a Black Box Logic gates Inputs and Outputs (logic variables) programmable (logic functions) switches 3 Programmable Logic Devices ANISH GOEL
  • 4. Programmable Logic Array (PLA)  Use to implement x1 x2 xn circuits in SOP form  The connections in Input buffers and the AND plane are inverters programmable x1 x1 xn xn  The connections in P1 the OR plane are programmable AND plane OR plane Pk 4 Programmable Logic Devices ANISH GOEL f1 fm
  • 5. Gate Level Version of PLA x1 x2 x3 Programmable connections OR plane f1 = x1x2+x1x3'+x1'x2'x3 P1 f2 = x1x2+x1'x2'x3+x1x3 P2 P3 P4 AND plane f1 f2 5 Programmable Logic Devices ANISH GOEL
  • 6. Customary Schematic of a PLA x1 x2 x3 OR plane f1 = x1x2+x1x3'+x1'x2'x3 P1 f2 = x1x2+x1'x2'x3+x1x3 P2 P3 P4 x marks the connections left in AND plane place after programming f1 f2 6 Programmable Logic Devices ANISH GOEL
  • 7. 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  216 = 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 Programmable Logic Devices ANISH GOEL
  • 8. Programmable Array Logic (PAL)  Also used to implement x1 x2 xn circuits in SOP form Input buffers  The connections in and inverters fixed connections the AND plane are programmable x1 x1 xn xn P1  The connections in AND plane OR plane the OR plane are Pk NOT programmable f1 fm 8 Programmable Logic Devices ANISH GOEL
  • 9. Example Schematic of a PAL x1 x2 x3 f1 = x1x2x3'+x1'x2x3 P1 f2 = x1'x2'+x1x2x3 f1 P2 P3 f2 P4 AND plane 9 Programmable Logic Devices ANISH GOEL
  • 10. 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 10 Programmable Logic Devices ANISH GOEL
  • 11. Macrocell Select Enable OR gate from PAL 0 f1 1 D Q Flip-flop Clock back to AND plane 11 Programmable Logic Devices ANISH GOEL
  • 12. 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 Select Enable 0 f1 1  Enable = Select = 1 allows D Q the PAL to synchronize the Clock output changes with a clock pulse back to AND plane  The feedback to the AND plane provides for multi-level design 12 Programmable Logic Devices ANISH GOEL
  • 13. 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 A B Sel = 0 En = 0 0 1 h D Q Sel = 0 Clock En = 1 0 g 1 D Q Select Clock 0 f 1 D Q Clock 13 Programmable Logic Devices ANISH GOEL
  • 14. 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 14 Programmable Logic Devices ANISH GOEL
  • 15. 4x4 ROM  22x4 bit ROM has 4 addresses that are decoded 2-to-4 decoder a0 a1 d3 d2 d1 d0 15 Programmable Logic Devices ANISH GOEL
  • 16. 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 16 Programmable Logic Devices ANISH GOEL
  • 17. An SPLD Programming Unit  The SPLD is removed from the PCB, placed into the unit and programmed there 17 Programmable Logic Devices ANISH GOEL
  • 18. Removable SPLD Socket Package  PLCC (plastic-leaded chip carrier) PLCC socket soldered to the PCB d oar it b i rcu dc nte Pr i 18 Programmable Logic Devices ANISH GOEL
  • 19. 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. 19 Programmable Logic Devices ANISH GOEL
  • 20. 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 20 Programmable Logic Devices ANISH GOEL
  • 21. Structure of a CPLD I/O block I/O block PAL-like PAL-like block block Interconnection wires I/O block I/O block PAL-like PAL-like block block 21 Programmable Logic Devices ANISH GOEL
  • 22. Internal Structure of a PAL-like Block  Includes macrocells  Usually about 16 each  Fixed OR planes PAL-like block  OR gates have fan-in between 5-20 PAL-like block  XOR gates provide DQ negation ability DQ  XOR has a control input DQ 22 Programmable Logic Devices ANISH GOEL
  • 23. More on PAL-like Blocks  CPLD pins are provided to control XOR, MUX, and tri-state gates  When tri-state gate is disabled, the corresponding output pin can be used as an input pin  The associated PAL-like block is then useless  The AND plane and interconnection network are programmable  Commercial CPLDs have between 2-100 PAL-like blocks 23 Programmable Logic Devices ANISH GOEL
  • 24. 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 24 Programmable Logic Devices ANISH GOEL
  • 25. Example CPLD  Use a CPLD to implement the function  f = x1x3x6' + x1x4x5x6' + x2x3x7 + x2x4x5x7 (from interconnection wires) x1 x2 x3 x4 x5 x6 x7 unused PAL-like block 0 1 0 f D Q 25 Programmable Logic Devices ANISH GOEL
  • 26. 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 26 Programmable Logic Devices ANISH GOEL
  • 27. Structure of an FPGA I/O block interconnection switch I/O block I/O block logic block I/O block 27 Programmable Logic Devices ANISH GOEL
  • 28. LUTs  Logic blocks are implemented using a lookup table (LUT)  Small number of inputs, one output  Contains storage cells that can be loaded with the desired values  A 2 input LUT uses 3 MUXes to implement any desired function x1 of 2 variables 0/1  Shannon's expansion at work! 0/1 f 0/1 0/1 x2 28 Programmable Logic Devices ANISH GOEL
  • 29. Example 2 Input LUT x1 x2 f 0 0 1 f = x1'x2' + x1x2, or using Shannon's expansion: 0 1 0 f = x1'(x2') + x1(x2) 1 0 0 = x1'(x2'(1) + x2(0)) + x1(x2'(0) + x2(1)) 1 1 1 x1 1 0 f 0 1 x2 29 Programmable Logic Devices ANISH GOEL
  • 30. 3 Input LUT x1  7 2x1 MUXes and x2 8 storage cells are required 0/1 0/1  Commercial LUTs have 0/1 4-5 inputs, and 16-32 0/1 f storage cells 0/1 0/1 0/1 0/1 x3 30 Programmable Logic Devices ANISH GOEL
  • 31. Programming an FPGA  ISP method is used  LUTs contain volatile storage cells  None of the other PLD technologies are volatile  FPGA storage cells are loaded via a PROM when power is first applied  The UP2 Education Board by Altera contains a JTAG port, a MAX 7000 CPLD, and a FLEX 10K FPGA  The MAX 7000 CPLD chip is EPM7128SLC84-7  EPM7  MAX 7000 family; 128 macrocells; LC84  84 pin PLCC package; 7  speed grade 31 Programmable Logic Devices ANISH GOEL
  • 32. Example FPGA  Use an FPGA with 2 input LUTS to implement the function f = x1x2 + x2'x3 x 3 f  f1 = x 1x 2 x1  f2 = x2'x3 x1 0 x2 0  f = f1 + f 2 0 f1 1 f2 0 0 x2 x2 x3 1 0 f1 0 1 f 1 f2 1 32 Programmable Logic Devices ANISH GOEL
  • 33. Another Example FPGA  Use an FPGA with 2 input LUTS to implement the function f = x1x3x6' + x1x4x5x6' + x2x3x7 + x2x4x5x7  Fan-in of expression is too large for FPGA (this was simple to do in a CPLD)  Factor f to get sub-expressions with max fan-in = 2  f = x1x6'(x3 + x4x5) + x2x7(x3 + x4x5) = (x1x6' + x2x7)(x3 + x4x5)  Could use Shannon's expansion instead  Goal is to build expressions out of 2-input LUTs 33 Programmable Logic Devices ANISH GOEL
  • 34. FPGA Implementation  f = (x1x6' + x2x7)(xx3 + x4x5) x5 x3 4 f x1 x1 0 x4 0 x3 0 0 A 0 C 1 E x6 x6 1 x5 0 C 1 1 0 1 x2 x2 0 A 0 D 0 0 B 1 D 0 f x7 x7 0 B 1 0 E 1 1 1 34 Programmable Logic Devices ANISH GOEL
  • 35. Custom Chips  PLDs are limited by number of programmable switches  Consume space  Reduce speed  Custom chips are created from scratch  Expensive  used when high speed is required, volume sales are expected, and chip size is small but with high density of gates  ASICs (Application Specific Integrated Circuits) are custom chips that use a standard cell layout to reduce design costs 35 Programmable Logic Devices ANISH GOEL
  • 36. Standard Cells  Rows of logic gates can be connected by wires in the routing channels  Designers (via CAD tools) select prefab gates from a library and place them in rows  Interconnections are made by wires in routing channels  Multiple layers may be used to avoid short circuiting  A hard-wired connection between layers is called a via x1 f2 x2 x3 f1 36 Programmable Logic Devices ANISH GOEL
  • 37. Example: Standard Cells  f1 = x1x2 + x1'x2'x3 + x1x3'  f2 = x1x2 + x1'x2'x3 + x1x3 x1 f2 x2 x3 f1 37 Programmable Logic Devices ANISH GOEL
  • 38. Sea of Gates Gate Array  A Sea of Gates gate array is just like a standard cell except all gates are of the same type  Interconnections are run in channels and use multiple layers  Cheaper to manufacture due to regularity 38 Programmable Logic Devices ANISH GOEL
  • 39. Example: Sea of Gates  f1 = x2x3' + x1x3 black  bottom layer channels red  top layer channels 39 Programmable Logic Devices ANISH GOEL
  • 40. Digital Logic Technology Tradeoffs Full custom VLSI design ASICs Speed / Density / Complexity / Likely Market Volume CPLDs FPGAs PLDs Engineering cost / Time to develop 40 Programmable Logic Devices ANISH GOEL