Ontogenetic hardware Ok, so the Tom Thumb algorithm can self-replicate an arbitrary structure within an FPGA But what kind of structures is it interesting.

Slides:



Advertisements
Similar presentations
Survey of Detection, Diagnosis, and Fault Tolerance Methods in FPGAs
Advertisements

Daniel Mange Towards Robust Bio-Inspired Circuits: The Embryonics Approach ECAL’99, Lausanne September 15, 1999.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
Differential Gene Expression
Embryonics: A New Methodology for Designing Field-Programmable Gate Arrays with Self-Repair and Self-Replicating Properties Laboratory for Reliable Computing.
Genetic Algorithms (GAs) by Jia-Huei Liao Source: Chapter 9, Machine Learning, Tom M. Mitchell, 1997 The Genetic Programming Tutorial Notebook
Artificial Cell Division Logic Systems Laboratory Daniel Mange lslwww.epfl.ch.
Lecture 1: Introduction Dr. Mamoun Ahram Faculty of Medicine Second year, Second semester, Principles of Genetics and Molecular Biology.
Ontogenetic systems Drawing inspiration from growth and healing processes of living organisms… …and applying them to electronic computing systems Phylogeny.
Development in hardware – Why? Option: array of custom processing nodes Step 1: analyze the application and extract the component tasks Step 2: design.
Cell Theory Functions necessary for life Surface area to volume Multicellular vs Unicellular.
Matthew Ziegler CS 851 – Bio-Inspired Computing Evolvable Hardware and the Embryonics Approach.
Reconfigurable POEtic Tissuehttp:// Project start and duration: September 1, 2001, 36 months. IST POETIC Reconfigurable.
Self-replication of complex machines. Cellular Self-Replication The molecular FPGA is used to CREATE the array of cells in the first place, before differentiation.
Tissues (Review). Tissues Tissues are made up of a group specialized cells Specialized cells are made due to different factors:
Lecture 18: Dynamic Reconfiguration II November 12, 2004 ECE 697F Reconfigurable Computing Lecture 18 Dynamic Reconfiguration II.
Course material – G. Tempesti Course material will generally be available the day before the lecture Includes.
“Politehnica” University of Timisoara Course No. 2: Static and Dynamic Configurable Systems (paper by Sanchez, Sipper, Haenni, Beuchat, Stauffer, Uribe)
Mohammadreza Baharani University of Tehran School of Electrical and Computer Engineering Spring 2010 Class presentation for the course: “Custom Implementation.
1 An Adaptive File Distribution Algorithm for Wide Area Network Takashi Hoshino, Kenjiro Taura, Takashi Chikayama University of Tokyo.
MAPLD 2005/254C. Papachristou 1 Reconfigurable and Evolvable Hardware Fabric Chris Papachristou, Frank Wolff Robert Ewing Electrical Engineering & Computer.
Lesson Overview 10.4 Cell Differentiation.
“Politehnica” University of Timisoara Course Advisor:  Lucian Prodan Evolvable Systems Web Page:   Teaching  Graduate Courses Summer.
“Politehnica” University of Timisoara Course No. 3: Project E MBRYONICS Evolvable Systems Winter Semester 2010.
Reconfigurable architectures ESE 566. Outline Static and Dynamic Configurable Systems –Static SPYDER, RENCO –Dynamic FIREFLY, BIOWATCH PipeRench: Reconfigurable.
ECE 551: Digital System Design & Synthesis Motivation and Introduction Lectures Set 1 (3 Lectures)
Evolving, Adaptable Visual Processing System Simon Fung-Kee-Fung.
1 - CPRE 583 (Reconfigurable Computing): Evolvable Hardware Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 24: Fri 11/18/2011 (Evolvable.
Ontogenetic hardware Ok, so the Tom Thumb algorithm can self- replicate an arbitrary structure within an FPGA But what kind of structures is it interesting.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
Reconfigurable Computing1 Reconfigurable Computing Part II.
Lesson Overview Lesson Overview Cell Differentiation Lesson Overview 10.4 Cell Differentiation.
Winter Semester 2010 ”Politehnica” University of Timisoara Course No. 5: Expanding Bio-Inspiration: Towards Reliable MuxTree  Memory Arrays – Part 2 –
9/4/2001 ECE 551 Fall ECE Digital System Design & Synthesis Lecture 1 - Introduction  Overview oCourse Introduction oOverview of Contemporary.
Programmable Hardware: Hardware or Software?
Lesson Overview 10.4 Cell Differentiation.
Programmable Logic Device Architectures
Essential Standard Bio.1.2 Analyze the cell as a living system
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
Lesson Overview 10.4 Cell Differentiation.
Lesson Overview 10.4 Cell Differentiation
Overview Introduction General Register Organization Stack Organization
Implementing Simplified Molecular Dynamics Simulation in Different Parallel Paradigms Chao Mei April 27th, 2006 CS498LVK.
Mitosis Round up Purple booklet Microscope images.
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
Anne Pratoomtong ECE734, Spring2002
Lesson Overview 10.4 Cell Differentiation.
Essential Standard Bio.1.2 Analyze the cell as a living system
Reconfigurable Hardware
The Cell Cycle.
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
Cell Change and Development Vocabulary: Cell specialization
Lesson Overview 10.4 Cell Differentiation.
Bio, Nano and Quantum Computing
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
ECNG 1014: Digital Electronics Lecture 1: Course Overview
Cell Change and Development Vocabulary: Cell specialization
Warm-up: Why do cells divide? HW: Enter Date Aim: MITOSIS
Lesson Overview 10.4 Cell Differentiation.
Instructor: Dr. Phillip Jones
HIGH LEVEL SYNTHESIS.
Optimizing stencil code for FPGA
Final Project presentation
Lesson Overview 10.4 Cell Differentiation.
A different kind of cellular division
Ch.10-4 Cell Differentiation
Section 1-2 Levels of organization
Lesson Overview 10.4 Cell Differentiation.
Lesson Overview 10.4 Cell Differentiation.
Lesson Overview 10.4 Cell Differentiation.
Presentation transcript:

Ontogenetic hardware Ok, so the Tom Thumb algorithm can self-replicate an arbitrary structure within an FPGA But what kind of structures is it interesting to self-replicate And why would you want to do it anyway?

Embryonics – Overview Brief outline: In this lecture, we will present an overview of the motivations behind the development of the Embryonics project. The overall structure of Embryonic systems will be analysed through a simple example.

Ontogenetic hardware Embryonics = embryonic electronics: Drawing inspiration from growth processes of living organisms to design complex computing systems Phylogeny (P) [Evolvability] PO hw PE hw POE hw Ontogeny (O) [Scalability] OE hw Epigenesis (E) [Adaptability]

Bio-Inspired Approaches Growth Self-organization Massive parallelism (multicellular systems) Issues that growth can potentially address: Complexity Scalability Fault tolerance

Caenorhabditis Elegans 11 December 1998

Caenorhabditis Elegans From S.F. Gilbert, Developmental Biology, Sinauer, 1991

Multicellular Organization 959 somatic cells

Cellular Differentiation Pharynx Intestine

Embryonics: How? Iterative electronic circuit based on 3 features: • multicellular organization • cellular division • cellular differentiation

Embryonics Landscape Population level (population = S organisms) Organismic level (organism = S cells) Cellular level (cell = S molecules) Molecular level (basic FPGA's element)

StopWatch

StopWatch

Multicellular Organization

StopWatch

StopWatch First step: design of a totipotent cell (stem cell) (of course, in practice it can be optimized)

StopWatch

Cellular Differentiation

Cloning

Cloning

Self-Repair

BioWatch The application can of course be anything… But then, the size and structure of the cell will vary from application to application: we need programmable logic!

MUXTREE Molecule The “molecular” layer of Embryonics is an FPGA

Cellular Self-Replication But if we use FPGAs, then we need to CREATE the array of cells in the first place, before differentiation can take place (self-replication)

Cellular Self-Replication But if we use FPGAs, then we need to CREATE the array of cells in the first place, before differentiation can take place (self-replication)

Cellular Self-Replication But if we use FPGAs, then we need to CREATE the array of cells in the first place, before differentiation can take place (self-replication)

Cellular Self-Replication Self-replication will allow the same FPGA partial configuration to be duplicated as many times as needed

Cellular Self-Repair But self-replication, and custom FPGAs, can ALSO be used to improve the reliability of the system

Cellular Self-Repair But self-replication, and custom FPGAs, can ALSO be used to improve the reliability of the system … within limits

Operation of the Cell

Kill a Molecule

Recovered Molecule

Kill Again (Kill a Cell)

Recovered Cell

Implementation - The BioWall

Summary We have seen a basic system implemented using the Embryonics approach. The system exploits self-replication and growth to simplify the layout and to improve reliability But how do you design this kind of systems? And can these ideas be applied to real-world circuits and applications?