Penn ESE680-002 Spring2007 -- DeHon 1 ESE680-002 (ESE534): Computer Organization Day 12: February 21, 2007 Compute 2: Cascades, ALUs, PLAs.

Slides:



Advertisements
Similar presentations
Lecture 15 Finite State Machine Implementation
Advertisements

CS370 – Spring 2003 Programmable Logic Devices PALs/PLAs.
1 Programmable Logic. 2 Prgrammable Logic Organization Pre-fabricated building block of many AND/OR gates (or NOR, NAND) "Personalized" by making or breaking.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 14: March 19, 2014 Compute 2: Cascades, ALUs, PLAs.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 9 Programmable Configurations Read Only Memory (ROM) – –a fixed array of AND gates.
Programmable Logic Devices
©2004 Brooks/Cole FIGURES FOR CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES Click the mouse to move to the next page. Use the ESC key.
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day10: October 25, 2000 Computing Elements 2: Cascades, ALUs,
Caltech CS184a Fall DeHon1 CS184a: Computer Architecture (Structures and Organization) Day8: October 18, 2000 Computing Elements 1: LUTs.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 4: February 25, 2009 Two-Level Logic-Synthesis.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 9: February 7, 2007 Instruction Space Modeling.
Lecture 3: Field Programmable Gate Arrays II September 10, 2013 ECE 636 Reconfigurable Computing Lecture 3 Field Programmable Gate Arrays II.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 13: February 26, 2007 Interconnect 1: Requirements.
Evolution of implementation technologies
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 26: April 18, 2007 Et Cetera…
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 11: February 14, 2007 Compute 1: LUTs.
Chapter # 4: Programmable and Steering Logic Section 4.1
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 10: February 12, 2007 Empirical Comparisons.
CS294-6 Reconfigurable Computing Day 14 October 7/8, 1998 Computing with Lookup Tables.
Multiplexers, Decoders, and Programmable Logic Devices
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 23: April 9, 2007 Control.
Penn ESE Spring DeHon 1 FUTURE Timing seemed good However, only student to give feedback marked confusing (2 of 5 on clarity) and too fast.
Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 5: January 24, 2007 ALUs, Virtualization…
Chapter 6 Memory and Programmable Logic Devices
Combinational Circuits Chapter 3 S. Dandamudi To be used with S. Dandamudi, “Fundamentals of Computer Organization and Design,” Springer, 2003.
Lecture 2: Field Programmable Gate Arrays September 13, 2004 ECE 697F Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
ESE Spring DeHon 1 ESE534: Computer Organization Day 19: April 7, 2014 Interconnect 5: Meshes.
Unit 9 Multiplexers, Decoders, and Programmable Logic Devices
CALTECH CS137 Winter DeHon 1 CS137: Electronic Design Automation Day 9: January 30, 2006 Parallel Prefix.
Unit 9 Multiplexers, Decoders, and Programmable Logic Devices Ku-Yaw Chang Assistant Professor, Department of Computer Science.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 9: February 24, 2014 Operator Sharing, Virtualization, Programmable Architectures.
CPLD (Complex Programmable Logic Device)
CBSSS 2002: DeHon Costs André DeHon Wednesday, June 19, 2002.
1 Lecture 9 Demultiplexers Programmable Logic Devices  Programmable logic array (PLA)  Programmable array logic (PAL)
4-1 Introduction Chapter # 4: Programmable and Steering Logic.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 19: April 6, 2015 Two-Level Logic-Synthesis.
CALTECH CS137 Fall DeHon 1 CS137: Electronic Design Automation Day 4: October 5, 2005 Two-Level Logic-Synthesis.
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #4 – FPGA.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 3: February 3, 2014 Arithmetic Work preclass exercise.
M.Mohajjel. Why? TTM (Time-to-market) Prototyping Reconfigurable and Custom Computing 2Digital System Design.
Chapter # 4: Programmable Logic
CEC 220 Digital Circuit Design Programmable Logic Devices
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
CSET 4650 Field Programmable Logic Devices
Logic and Computer Design Fundamentals, Fifth Edition Mano | Kime | Martin Copyright ©2016, 2008, 2004 by Pearson Education, Inc. All rights reserved.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 10: January 31, 2003 Compute 2:
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 18: March 25, 2013 Two-Level Logic-Synthesis.
Penn ESE534 Spring DeHon 1 ESE534 Computer Organization Day 9: February 13, 2012 Interconnect Introduction.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 3: January 25, 2010 Arithmetic Work preclass exercise.
Caltech CS184 Winter DeHon CS184a: Computer Architecture (Structure and Organization) Day 4: January 15, 2003 Memories, ALUs, Virtualization.
PLDS Mohammed Anvar P.K AP/ECE Al-Ameen Engineering College.
Caltech CS184 Winter DeHon 1 CS184a: Computer Architecture (Structure and Organization) Day 11: January 31, 2005 Compute 1: LUTs.
CBSSS 2002: DeHon Universal Programming Organization André DeHon Tuesday, June 18, 2002.
Penn ESE534 Spring DeHon ESE534: Computer Organization Day 14: March 12, 2012 Empirical Comparisons.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 15: March 13, 2013 High Level Synthesis II Dataflow Graph Sharing.
Penn ESE534 Spring DeHon 1 ESE534: Computer Organization Day 11: February 20, 2012 Instruction Space Modeling.
ESE Spring DeHon 1 ESE534: Computer Organization Day 20: April 9, 2014 Interconnect 6: Direct Drive, MoT.
ESE534: Computer Organization
This chapter in the book includes: Objectives Study Guide
Presentation on FPGA Technology of
CS184a: Computer Architecture (Structure and Organization)
ESE534 Computer Organization
CS184a: Computer Architecture (Structure and Organization)
ESE534: Computer Organization
CSE 370 – Winter 2002 – Comb. Logic building blocks - 1
ESE534: Computer Organization
ESE535: Electronic Design Automation
FIGURE 5-1 MOS Transistor, Symbols, and Switch Models
CprE / ComS 583 Reconfigurable Computing
Presentation transcript:

Penn ESE Spring DeHon 1 ESE (ESE534): Computer Organization Day 12: February 21, 2007 Compute 2: Cascades, ALUs, PLAs

Penn ESE Spring DeHon 2 Last Time LUTs –area –structure –big LUTs vs. small LUTs with interconnect –design space –optimization

Penn ESE Spring DeHon 3 Today Cascades ALUs PLAs

Penn ESE Spring DeHon 4 Last Time Larger LUTs –Less interconnect delay +General: Larger compute blocks –Minimize interconnect crossings ­Large LUTs –Not efficient for typical logic structure

Penn ESE Spring DeHon 5 Different Structure How can we have “larger” compute nodes (less general interconnect) without paying huge area penalty of large LUTs?

Penn ESE Spring DeHon 6 Structure in subgraphs Small LUTs capture structure What structure does a small-LUT-mapped netlist have?

Penn ESE Spring DeHon 7 Structure LUT sequences ubiquitous

Penn ESE Spring DeHon 8 Hardwired Logic Blocks Single Output

Penn ESE Spring DeHon 9 Hardwired Logic Blocks Two outputs

Penn ESE Spring DeHon 10 Delay Model Tcascade =T(3LUT) + T(mux) Don’t pay –General interconnect –Full 4-LUT delay

Penn ESE Spring DeHon 11 Options

Penn ESE Spring DeHon 12 Chung & Rose Study [Chung & Rose, DAC ’92]

Penn ESE Spring DeHon 13 Cascade LUT Mappings [Chung & Rose, DAC ’92]

Penn ESE Spring DeHon 14 ALU vs. Cascaded LUT?

Penn ESE Spring DeHon 15 Datapath Cascade ALU/LUT (datapath) Cascade –Long “serial” path w/out general interconnect –Pay only Tmux and nearest-neighbor interconnect

Penn ESE Spring DeHon 16 4-LUT Cascade ALU

Penn ESE Spring DeHon 17 ALU vs. LUT ? Compare/contrast ALU –Only subset of ops available –Denser coding for those ops –Smaller –…but interconnect dominates –[Datapath width orthogonal to function]

Penn ESE Spring DeHon 18 Parallel Prefix LUT Cascade? Can we do better than N×Tmux? Can we compute LUT cascade in O(log(N)) time? Can we compute mux cascade using parallel prefix? Can we make mux cascade associative?

Penn ESE Spring DeHon 19 Parallel Prefix Mux cascade How can mux transform S  mux-out? –A=0, B=0  mux-out=0 –A=1, B=1  mux-out=1 –A=0, B=1  mux-out=S –A=1, B=0  mux-out=/S

Penn ESE Spring DeHon 20 Parallel Prefix Mux cascade How can mux transform S  mux-out? –A=0, B=0  mux-out=0 Stop= S –A=1, B=1  mux-out=1 Generate= G –A=0, B=1  mux-out=S Buffer = B –A=1, B=0  mux-out=/S Invert = I

Penn ESE Spring DeHon 21 Parallel Prefix Mux cascade How can 2 muxes transform input? Can I compute 2-mux transforms from 1 mux transforms?

Penn ESE Spring DeHon 22 Two-mux transforms SS  S SG  G SB  S SI  G GS  S GG  G GB  G GI  S BS  S BG  G BB  B BI  I IS  S IG  G IB  I II  B

Penn ESE Spring DeHon 23 Generalizing mux-cascade How can N muxes transform the input? Is mux transform composition associative?

Penn ESE Spring DeHon 24 Parallel Prefix Mux-cascade Can be hardwired, no general interconnect

Penn ESE Spring DeHon 25 “ALU”s Unpacked Traditional/Datapath ALUs 1.SIMD/Datapath Control Architecture variable w 2.Long Cascade Typically also w, but can shorter/longer Amenable to parallel prefix implementation in O(log(w)) time w/ O(w) space 3.Restricted function Reduces instruction bits Reduces expressiveness

Penn ESE Spring DeHon 26 Commercial Devices

Penn ESE Spring DeHon 27 Xilinx XC4000 CLB

Penn ESE Spring DeHon 28 Xilinx Virtex-II

Penn ESE Spring DeHon 29

Penn ESE Spring DeHon 30

Penn ESE Spring DeHon 31

Penn ESE Spring DeHon 32 Virtex-5

Penn ESE Spring DeHon 33 Altera Stratix

Penn ESE Spring DeHon 34

Penn ESE Spring DeHon 35

Penn ESE Spring DeHon 36 Programmable Array Logic (PLAs)

Penn ESE Spring DeHon 37 PLA Directly implement flat (two-level) logic –O=a*b*c*d + !a*b*!d + b*!c*d Exploit substrate properties allow wired-OR

Penn ESE Spring DeHon 38 Wired-or Connect series of inputs to wire Any of the inputs can drive the wire high

Penn ESE Spring DeHon 39 Wired-or Implementation with Transistors

Penn ESE Spring DeHon 40 Programmable Wired-or Use some memory function to programmable connect (disconnect) wires to OR Fuse:

Penn ESE Spring DeHon 41 Programmable Wired-or Gate-memory model

Penn ESE Spring DeHon 42 Diagram Wired-or

Penn ESE Spring DeHon 43 Wired-or array Build into array –Compute many different or functions from set of inputs

Penn ESE Spring DeHon 44 Combined or-arrays to PLA Combine two or (nor) arrays to produce PLA (and-or array) Programmable Logic Array

Penn ESE Spring DeHon 45 PLA Can implement each and on single line in first array Can implement each or on single line in second array

Penn ESE Spring DeHon 46 PLA Efficiency questions: –Each and/or is linear in total number of potential inputs (not actual) –How many product terms between arrays?

Penn ESE Spring DeHon 47 PLA Product Terms Can be exponential in number of inputs E.g. n-input xor (parity function) –When flatten to two-level logic, requires exponential product terms –a*!b+!a*b –a*!b*!c+!a*b*!c+!a*!b*c+a*b*c …and shows up in important functions –Like addition…

Penn ESE Spring DeHon 48 PLAs Fast Implementations for large ANDs or ORs Number of P-terms can be exponential in number of input bits –most complicated functions –not exponential for many functions Can use arrays of small PLAs –to exploit structure –like we saw arrays of small memories last time

Penn ESE Spring DeHon 49 PLAs vs. LUTs? Look at Inputs, Outputs, P-Terms –minimum area (one study, see paper) –K=10, N=12, M=3 A(PLA 10,12,3) comparable to 4-LUT? –80-130%? –300% on ECC (structure LUT can exploit) Delay? –Claim 40% fewer logic levels (4-LUT) (general interconnect crossings) [Kouloheris & El Gamal/CICC’92]

Penn ESE Spring DeHon 50 PLA

Penn ESE Spring DeHon 51 PLA and Memory

Penn ESE Spring DeHon 52 PLA and PAL PAL = Programmable Array Logic

Penn ESE Spring DeHon 53 Conventional/Commercial FPGA Altera 9K (from databook)

Penn ESE Spring DeHon 54 Conventional/Commercial FPGA Altera 9K (from databook)Like PAL

Penn ESE Spring DeHon 55 Big Ideas [MSB Ideas] Programmable Interconnect allows us to exploit that structure –want to match to application structure –Prog. interconnect delay expensive Hardwired Cascades –key technique to reducing delay in programmables PLAs –canonical two level structure –hardwire portions to get Memories, PALs

Penn ESE Spring DeHon 56 Big Ideas [MSB-1 Ideas] Better structure match with hardwired LUT cascades