Programmable Logic

Programmable Logic

Programmable logic • Logic gates, multiplexers, flip-flops • Programmable logic devices • PROM, PLA, PAL, GAL, CPLD, FPGA • Look-up Table (LUT) The Basic Logic Gates These three gates are logical sufficient to express any boolean operation! A A AND Y=AB OR Y = A+B A NOT Y = �̅ B B A B Y A B Y A Y 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1 Other Logic gates NAND = �� NOR = � + � XOR = �̅� + ��& = �⨁� XNOR = �̅� + ��& = �⨁� Apollo Guidance Computer Image credit: NASA Sources: http://history.nasa.gov/computers/Ch2-5.html https://en.wikipedia.org/wiki/Apollo_Guidance_Computer https://history.nasa.gov/computers/Ch2-5.html http://www.ibiblio.org/apollo/ https://newatlas.com/apollo-11-guidance-computer/59766/ Multiplexer S A � = �� + ��̅ Y B S A B S Y 0 0 0 0 0 0 1 0 0 1 0 1 A 0 1 1 0 1 0 0 0 1 0 1 1 B 1 1 0 1 1 1 1 1 Feedback / Sequential logic D flip-flop Synchronous logic LOGIC D Q clk Rising edge of clock clk D Q Integrated Circuits • Standard transistor-transistor logic (TTL) integrated circuits (mid 1960s) • 100’s of devices, ready for use, that provide e.g. – basic logic gates – Flip-flops & memory – Counters – Arithmetic Logic Units (ALU) • ”Programmability”: wires! • Glue logic in computers and industrial electronics Source: wikipedia Programmable Logic Devices (PLD) Inputs . Product • PROM: Programmable ReaD Only Memory terms • PLA: Programmable Logic Array AND OR • PAL: Programmable Array Logic . Array Array • GAL: Generic Array Logic . Outputs Address decoder PROM A2 A1 A0 • First simple PLD Memory bits Can be viewed as a fixed array of AND functions x x x x 000 driving a programmable array of OR functions x x x x 001 x x x x 010 Inputs x x x x . Product 011 terms x x x x 100 AND OR x x x x 101 . Array Array x x x x 110 . x x x x 111 Outputs X signifies a fuse signifies a connection Y3 Y2 Y1 Y0 Programmable Logic Array (PLA) A2 A1 A0 • Programmable AND & OR gate array x x x x x x x x x x Inputs x x x x x x x x x x . Product x x x x x x x x x x terms x x x x x x x x x x AND OR . x x x x x x x x x x Array Array x x x x x x x x x x . x x x x x x x x x x Outputs x x x x x x x x x x X signifies a fuse signifies a connection Y3 Y2 Y1 Y0 Programmable Logic Array (PLA) A B S • Example of multiplexer A Y B S � = �� + ��̅ X signifies a fuse signifies a connection Y Programmable Array Logic (PAL) A2 A1 A0 • Programmable AND & fixed OR x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x Photo: Michael Holley, 2006. x x x x x x Accessed from: http://commons.wikimedia.org x x x x x x X signifies a fuse signifies a connection Y3 Y2 Y1 Y0 Generic Array Logic • PAL + output macrocell – w/ e.g flip-flop & mux Source: GAL22V10 datasheet . These devices are discontinued. Complex PLDs • More advanced PLDs (end 70s, beg. 80s) – CPLD: Complex Programmable Logic Devices (Array of PAL/GAL linked by programmable interconnections) Photo: Altera Corporation – FPGA: Field Programmable Gate Array (Based on concept of Look-Up Table, LUT) The FPGA was invented by Ross Freeman in 1984. Inventor’s hall of fame: https://www.invent.org/inductees/ross-freeman Photo: Xilinx Look-Up Table (LUT) A0 A1 A1 A0 M 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 1 1 1 1 Two input AND-gate Programmable Logic Devices PLD SPLD CPLD FPGA PROM PLA PAL GAL others Based on figure 16.19 in Clive Maxfield, “Bebop to the Boolean Boogie”, 3rd Edition, Elsiver. Summary • Logic gates, multiplexers, flip-flops • Programmable logic devices • PROM, PLA, PAL, GAL, CPLD, FPGA • Look-up Table (LUT) Sources of material • Clive Maxfield, “Who made the first PLD?”, EETimes, 2011. https://www.eetimes.com/who-made-the-first-pld/ • Clive Maxfield, “Bebop to the Boolean Boogie, 3rd Edition. Elsevier. Available online at UB. • Wikipedia • And links used elsewhere in this presentation..

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    18 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us