Introduction to Programmable Logic Devices John Coughlan STFC Technology Department Detector & Electronics Division.

Slides:



Advertisements
Similar presentations
FPGA (Field Programmable Gate Array)
Advertisements

Hao wang and Jyh-Charn (Steve) Liu
Introduction to Programmable Logic John Coughlan RAL Technology Department Electronics Division.
Survey of Reconfigurable Logic Technologies
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Programmable Logic Devices
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
The Spartan 3e FPGA. CS/EE 3710 The Spartan 3e FPGA  What’s inside the chip? How does it implement random logic? What other features can you use?  What.
Programmable logic and FPGA
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
February 4, 2002 John Wawrzynek
Programmable Array Logic (PAL) Fixed OR array programmable AND array Fixed OR array programmable AND array Easy to program Easy to program Poor flexibility.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
General FPGA Architecture Field Programmable Gate Array.
EET 252 Unit 5 Programmable Logic: FPGAs & HDLs  Read Floyd, Sections 11-5 to  Study Unit 5 e-Lesson.  Do Lab #5.  Lab #5a due next week. 
EE 261 – Introduction to Logic Circuits Module #8 Page 1 EE 261 – Introduction to Logic Circuits Module #8 – Programmable Logic & Memory Topics A.Programmable.
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
BR 1/001 Implementation Technologies We can implement a design with many different implementation technologies - different implementation technologies.
Introduction to Programmable Logic Devices and FPGAs Edward Freeman STFC Technology Department Detector & Electronics Division.
EE4OI4 Engineering Design Programmable Logic Technology.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
ASIC 120: Digital Systems and Standard-Cell ASIC Design Tutorial 4: Digital Systems Concepts November 16, 2005.
Introduction to Programmable Logic Devices John Coughlan RAL Technology Department Electronics Division.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
Electronics in High Energy Physics Introduction to Electronics in HEP Field Programmable Gate Arrays Part 1 based on the lecture of S.Haas.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
PROGRAMMABLE LOGIC DEVICES (PLD)
Introduction to Programmable Logic Devices Edward Freeman STFC Technology Department Detector & Electronics Division.
1 Moore’s Law in Microprocessors Pentium® proc P Year Transistors.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
J. Christiansen, CERN - EP/MIC
COE 405 Design and Modeling of Digital Systems
Galen SasakiEE 260 University of Hawaii1 Electronic Design Automation (EDA) EE 260 University of Hawaii.
Programmable Logic Devices
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
Basic Sequential Components CT101 – Computing Systems Organization.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
ECE 3110: Introduction to Digital Systems Introduction (Contd.)
EE3A1 Computer Hardware and Digital Design
FPGA Based System Design
M.Mohajjel. Why? TTM (Time-to-market) Prototyping Reconfigurable and Custom Computing 2Digital System Design.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
FPGA-Based System Design: Chapter 1 Copyright  2004 Prentice Hall PTR Moore’s Law n Gordon Moore: co-founder of Intel. n Predicted that number of transistors.
Survey of Reconfigurable Logic Technologies
Delivered by.. Love Jain p08ec907. Design Styles  Full-custom  Cell-based  Gate array  Programmable logic Field programmable gate array (FPGA)
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
1 Digital Logic Design (41-135) Introduction Younglok Kim Dept. of Electrical Engineering Sogang University Spring 2006.
Introduction to Programmable Logic Devices and FPGAs
Field Programmable Gate Arrays
Introduction to Programmable Logic Devices
Introduction to Programmable Logic
Sequential Programmable Devices
Sequential Logic Design
Introduction to Field Programmable Gate Arrays FPGAs
Introduction to Programmable Logic Devices
Introduction to Programmable Logic
From Silicon to Microelectronics Yahya Lakys EE & CE 200 Fall 2014
Electronics for Physicists
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
Electronics for Physicists
Programmable logic and FPGA
Presentation transcript:

Introduction to Programmable Logic Devices John Coughlan STFC Technology Department Detector & Electronics Division

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic is a Key Underlying Technology for PP Experiments. n First-Level and High-Level Triggering n Data Transport (Networks) n Computers interacting with Hardware (Networks) n Silicon Trackers (Millions of Data Channels) Commercial Devices. Developments driven by Industry. Telecomms, Gaming, Aerospace, Automotive, Set-top boxes…. PPD Lectures

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( CMS CERN LHC Particle Physics Electronics Custom Electronics Chips ASICs ANALOGUE $$$ Rad Hard, Low Power

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( CMS CERN LHC Electronics Rooms Particle Physics Electronics Trigger Systems. DAQ Systems. DIGITAL Custom Electronics Chips ASICs ANALOGUE $$$ Rad Hard, Low Power Custom Digital Processing Boards VME Bus Crates

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Particle Physics Electronics n Special Dedicated Logic Functions (not possible in CPUs) u Ultra Fast Trigger Systems (Trigger Algorithms) Clock Accurate Timing u Massively Parallel Data Processing (Silicon Trackers with Millions of Channels) Custom Designed Printed Circuit Boards PCBs. Commercial Programmable Logic Devices, FPGAs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( CMS DAQ/Trigger Architectures CMS “Telecoms Network” ~ 1 Tbps Fully custom PP ASICs CPUs Commodity PCs Programmable Logic DIGITAL

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Lecture Outline n Programmable Logic Devices u Basics u Evolution n FPGA Field Programmable Gate Array u Architecture n Design Flow u Hardware Description Languages u Design Tools

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Logic Gates

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Logic Gates Transistor Switches

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Logic Gates Transistor Switches < 40 nm ! $$$ MOORE’S LAW

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Black Box SUM of PRODUCTS Truth Table (Look Up Table LUT) Digital Logic Function 3 Inputs Product AND (&) Sum OR (|)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Black Box SUM of PRODUCTS Truth Table (Look Up Table LUT) Digital Logic Function 3 Inputs Product AND (&) Sum OR (|)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Digital Logic Black Box SUM of PRODUCTS Truth Table (Look Up Table LUT) Digital Logic Function 3 Inputs Product AND (&) Sum OR (|)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Un-programmed State n SUM of PRODUCTS n (Re-)Programmble Links n Reconfigurable n GLUE LOGIC Logic Functions Planes of ANDs, ORs Inputs Outputs ANDs ORs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Un-programmed State n SUM of PRODUCTS n (Re-)Programmble Links n Reconfigurable n GLUE LOGIC Logic Functions Planes of ANDs, ORs Inputs Outputs ANDs ORs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Un-programmed State n SUM of PRODUCTS n (Re-)Programmble Links n Reconfigurable n GLUE LOGIC Logic Functions Planes of ANDs, ORs Inputs Outputs ANDs ORs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Un-programmed State n SUM of PRODUCTS n (Re-)Programmble Links n Reconfigurable n GLUE LOGIC Logic Functions Programmed PLD Product Terms Sums Planes of ANDs, ORs Inputs Outputs ANDs ORs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Logic Functions Programmed PLD Product Terms Sums

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Logic Functions Programmed PLD Product Terms Sums x x x x x

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Programmable Logic Devices PLDs Logic Functions Programmed PLD Product Terms Sums x x x x x x x n GLUE LOGIC

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Complex PLDs n CPLDs n Programmable PLD Blocks n Programmable Interconnects n Electrically Erasable links CPLD Architecture Feedback Outputs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Sequential Circuits n Combinational Logic (Larger circuits difficult to predict) n Synchronous Logic driven by a CLOCK n Registers, Flip Flops (Memory) Inputs

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Sequential Circuits Register CLOCK New Output every clock edge n Combinational Logic (Larger circuits difficult to predict) n Synchronous Logic driven by a CLOCK n Registers, Flip Flops (Memory) Inputs Intermediate EDGES

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Sequential Circuits Register CLOCK New Output every clock edge Shift Registers, Pipelines, Finite State Machines … n Combinational Logic (Larger circuits difficult to predict) n Synchronous Logic driven by a CLOCK n Registers, Flip Flops (Memory) Clock Rate determines speed Comb Logic Must meet Timing => Predictable circuits Inputs Intermediate EDGES

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Field Programmable Gate Arrays FPGA n Field Programmable Gate Array u ‘Simple’ Programmable Logic Blocks u Massive Fabric of Programmable Interconnects u Standard CMOS Integrated Circuit fabrication process as for memory chips (Moore’s Law)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Field Programmable Gate Arrays FPGA n Field Programmable Gate Array u ‘Simple’ Programmable Logic Blocks u Massive Fabric of Programmable Interconnects u Standard CMOS Integrated Circuit fabrication process as for SRAM memory chips (Moore’s Law) Huge Density of Logic Block ‘Islands’ 1,000 … 100,000’s in a ‘Sea’ of Interconnects FPGA Architecture

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Field Programmable Gate Arrays FPGA

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Logic Blocks n Logic Functions implemented in Look Up Table LUTs. n Flip-Flops. Registers. Clocked Storage elements. n Multiplexers (select 1 of N inputs) FPGA Fabric Logic Block

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Look Up Tables LUTs n LUT contains Memory Cells to implement small logic functions n Each cell holds ‘0’ or ‘1’. n Programmed with outputs of Truth Table n Inputs select content of one of the cells as output 3 Inputs LUT -> 8 Memory Cells Static Random Access Memory SRAM cells 3 – 6 Inputs Multiplexer MUX

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Look Up Tables LUTs n LUT contains Memory Cells to implement small logic functions n Each cell holds ‘0’ or ‘1’. n Programmed with outputs of Truth Table n Inputs select content of one of the cells as output n Configured by re-programmable SRAM memory cells 3 Inputs LUT -> 8 Memory Cells Static Random Access Memory SRAM cells 3 – 6 Inputs Multiplexer MUX

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Logic Blocks n Larger Logic Functions built up by connecting many Logic Blocks together

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Logic Blocks n Larger Logic Functions built up by connecting many Logic Blocks together n Determined by SRAM cells SRAM cells

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Clocked Logic n Registers on outputs. CLOCKED storage elements. n Synchronous FPGA Logic Design, Pipelined Logic. n FPGA Fabric Pulse from Global Clock (e.g. LHC BX frequency) FPGA Fabric Clock from Outside world (eg LHC bunch frequency) Special Routing for Clocks

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Input Output I/O Getting data in and out Up to > 1,000 I/O “pins” (several 100 MHz)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Input Output I/O Getting data in and out Up to > 1,000 I/O “pins” (several 100 MHz) Special I/O SERIALISERS ~ 10 Gbps transfer rates Optical TRx

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Designing Logic with FPGAs n Design Capture. n High level Description of Logic Design. u Graphical descriptions u Hardware Description Language (Textual)

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Hardware Description Languages n Language describing hardware (Engineers call it FIRMWARE) n Doesn’t behave like “normal” programming language ‘C/C++’ n Describe Logic as collection of Processes operating in Parallel n Language Constructs for Synchronous Logic n Compiler (Synthesis) Tools recognise certain code constructs and generates appropriate logic n Not all constructs can be implemented in FPGA! n 2 Popular languages are VHDL, VERILOG n Easy to start learning… Hard to master!

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( VHDL ENTITY Declaration Input Output to Module (STD LOGIC) SIGNALS Declaration WIRES CONCURRENT ASSIGNMENTS CONDITIONAL ASSIGNMENTS => MULTIPLEXERS

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( VHDL COMPONENT Declaration PROCESS Declaration. CONCURRENT functions. Synchronous Logic.

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Designing Logic with FPGAs n High level Description of Logic Design u Hardware Description Language (Textual) n Compile (Synthesis) into NETLIST. n Boolean Logic Gates. n Target FPGA Device u Mapping u Routing n Bit File for FPGA n Commercial CAE Tools (Complex & Expensive) n Logic Simulation Design Flow

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Designing Logic with FPGAs n High level Description of Logic Design u Hardware Description Language (Textual) n Compile (Synthesis) into NETLIST. n Boolean Logic Gates. n Target FPGA Device u Mapping u Routing n Bit File for FPGA n Commercial CAE Tools (Complex & Expensive) n Logic Simulation Design Flow

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Designing Logic with FPGAs n High level Description of Logic Design u Hardware Description Language (Textual) n Compile (Synthesis) into NETLIST. n Boolean Logic Gates. n Target FPGA Device u Mapping u Routing n Bit File for FPGA n Commercial CAE Tools (Complex & Expensive) n Logic Simulation Design Flow

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Configuring an FPGA n Millions of SRAM cells holding LUTs and Interconnect Routing n Volatile Memory. Lose configuration when board power is turned off. n Keep Bit Pattern describing the SRAM cells in non-Volatile Memory e.g. PROM or Digital Camera card n Configuration takes ~ secs JTAG Port

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Configuring an FPGA n Millions of SRAM cells holding LUTs and Interconnect Routing n Volatile Memory. Lose configuration when board power is turned off. n Keep Bit Pattern describing the SRAM cells in non-Volatile Memory e.g. PROM or Digital Camera card n Configuration takes ~ secs JTAG Testing JTAG Port Programming Bit File

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Field Programmable Gate Arrays FPGA n Large Complex Functions n Re-Programmability, Flexibility. n Massively Parallel Architecture n Processing many channels simultaneously cf MicroProcessor n Fast Turnaround Designs n Standard IC Manufacturing Processes. Moore’s Law n Mass produced. Inexpensive. n Many variants. Sizes. Features. n PP Not Radiation Hard  n Power Hungry  n No Analogue 

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( FPGA Trends n State of Art is 40nm on 300 mm wafers n Top of range >500,000 Logic Blocks n >1,000 pins (Fine Pitched BGA) n Logic Block cost ~ 1$ in 1990 n Today < 0.1 cent n Problems u Power. Leakage currents. u Design Gap F CAE Tools

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Summary n Programmable Logic Devices u Basics u Evolution n FPGA Field Programmable Gate Arrays u Architecture n Design Flow u Hardware Description Languages u Design Tools Importance for Particle Physics Experiments

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( References n The Design Warrior’s Guide to FPGAs u Clive Maxfield, Newnes Elsevier n VHDL for Logic Synthesis u Andrew Rushden, Wiley n FPGA manufacturer web sites u u n FPGA Online u u u

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Spare Slides

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( System on a Chip n Add Embedded Micro-Processor Cores in Fabric u e.g. RISC PowerPC u Ethernet Interface n Run Operating System e.g. Linux n Combine Micro-Processor & Massively Parallel Logic n Dual Design Flows u Firmware HDL u Software C

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Time line of Programmable devices

The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Application Specific Integrated Circuits ASICs Large Complex Functions. Millions of Gates Customised for Extremes of Speed, Low Power, Radiation Hardness (Very) Expensive to Design (in small quantities) > $1 Million mask set (Very) Hard to Design. Long Design cycles. NOT Reprogrammable. FROZEN in Silicon. High Risk Limited Complexity Thousands of Gates Cheap Easy to Design Reprogrammable. Custom Fabricated Design from Scratch Prefabricated Programmed