Special Topic Emerging Technologies of Computation Montek Singh
- Slides: 65
Special Topic: Emerging Technologies of Computation Montek Singh COMP 740 Nov 7, 2016
List of Topics � Quantum dot cellular automata (QCA) ◦ Electrostatic QCA ◦ Magnetic QCA � Probabilistic Computing � Multicore/Many-core systems � On-Chip Networks � Computing using DNA ◦ DNA as the computer ◦ DNA as the assembler of a computer � Neuromorphic Computing
Cellular Automata � Discrete model studied in computability ◦ grid made up of “cells” ◦ each cell can be in one of finite number of states ◦ each cell has a defined “neighborhood” ◦ at each new time step, the state of a cell is determined by the state of its neighborhood in prior time step Conway’s Game of Life
Cellular Automata: Elementary examples � e. g. , “Rule 30” � e. g. , “Rule 110”
Cellular Automata: Biology ex � Seashell patterns ◦ each cell’s pigment controlled by activating and inhibiting activity of neighbors Conus textile
Quantum Dot Cellular Automata � QCA ◦ proposed models of quantum computation ◦ analogous to conventional CAs �but based on quantum mechanical phenomenon of “tunneling” � Quantum dots ◦ 4 -dot cell �basic unit of storage and computation �two states: -1 and +1 �electrostatic repulsion
QCA: wires � Wires formed by juxtaposition of cells ◦ if leftmost is controlled externally, all others align same direction ◦ like “dominoes” falling
QCA: inverter � Key idea is to place cells at 45 degrees w. r. t. each other � Two branches used here, one can work too
QCA: basic gate � Majority gate ◦ 2 out of 3 inputs determine output � Can you make? ◦ AND gate ◦ OR gate
Magnetic QCA
Basics of magnetism � Magnetic domains �regions within magnetic material with uniform magnetization… �… separated by “domain walls” �magnetic moments all exactly aligned �responsible for magnetic behavior of “ferromagnetic” materials: iron, nickel, etc. � What causes them? �magneto-static energy is minimized � Other energy terms: �magnetoelastic anisotropy �magnetocrystalline anisotropy �Zeeman energy Magnetic domains
Basics of magnetism � Magnetic domains ◦ more domains reduces magnetostatic energy ◦ but increases wall energy � Single Domain (SD) ◦ 10 to 100 nm is a good size
Basics of magnetism � Magnetization ◦ … under externally applied magnetic field (H) ◦ domains change shape and magnetic moments re-orient �walls shift or disappear ◦ even physical shape of material can change somewhat! �called magnetostriction �useful in actuators and sensors ◦ in strong enough field, all domains aligned �minimizes Zeeman energy
MQCA: majority gate
MQCA: majority gate
Probabilistic Computing
Basics of probabilistic design � Operate at reduced voltage ◦ more noise but lesser energy consumption � Where is this acceptable? � Where could this be even desirable?
Probabilistic CMOS switch � Thermal noise makes any switch noisy ◦ probability of error depends on thermal noise vs. operating voltage
Energy-Correctness Tradeoffs � energy required goes up exponentially with prob. of correctness
Probabilistic arithmetic � Supply reduced voltage to adder gates ◦ fine-grain: each stage receives own voltage ◦ coarse-grain: use binning
Probabilistic arithmetic � Energy-correctness tradeoff example
Multicore and Many-core Systems
What is Multicore Design? � Two or more CPU cores on a single die ◦ typically share L 2 cache ◦ typically separate L 1 caches ◦ share main memory
Why Multicore? � What was happening before c. 2010? � What started happening c. 2010? � Why?
Why Multicore? � Three main technological reasons ◦ Memory Wall �increasing gap between CPU and memory speeds �no longer makes sense to simply make CPU faster ◦ ILP Wall �increasing difficulty in finding enough parallelism in single stream of instructions �tried hyper-threading already ◦ Power Wall �increasing frequency was increasing power density without so much increase in performance �poses big manufacturing problems
Why Multicore?
Example: Intel i 7
Example: ARM Cortex-A 9
Example: NVIDIA
On-Chip Networks (NOC = Network-on-a-chip)
What is an NOC? � Communication fabric between components/cores
Communication inside a Systemon-Chip (So. C) � Several topologies
Topology Example � Grid-structured No. C
Layers of abstraction �… in terms of OSI layer model of networking
Topologies: Regular
Topologies: Irregular
Computing using DNA
Computing using DNA � Two different technologies ◦ DNA as biochemical computer �DNA molecules encode data �enzymes, probes etc. manipulate data ◦ DNA used to assemble electronic computer �DNA molecules used as scaffolding �nanoscale electronic components piggyback �DNA assembles the computer
“I was fascinated. With my own hands, I was creating DNA that did not exist in nature. ” Leonard M. Adleman Scientific American, August 1998
How do we make DNA compute? � To build a computer, only two things are really needed ◦ a method of storing information ◦ a few simple operations for acting on that information Turing machine � Is DNA good enough? ◦ great way to store the “blueprint of life” ◦ enzymes (polymerases and ligases) can operate ◦ Is this enough? YES!
Let’s choose a problem! � Hamiltonian Path Problem ◦ given: a directed graph, G ◦ given: specified start and end nodes, s and t ◦ definition: Hamiltonian path is one that goes from start node to end node, passing through each remaining node exactly once ◦ decide: whether a Hamiltonian path exists for <G, s, t> � Like all good problems, this one is NP-complete
An algorithm Given graph with n vertices, 1. Generate a set of random paths through the graph 2. For each path: a. check if path has correct start and end nodes b. check if path passes through exactly n nodes c. check if each vertex is visited Remove path if it fails any of these checks 3. If set is not empty, report that a Hamiltonian path exists.
Adleman’s DNA computer � Hamiltonian Path Problem ◦ 7 cities, 14 nonstop flights ◦ takes about a min for most of us � Smaller problem ◦ 4 cities ◦ for illustration
Coding the problem � Use DNA fragments to code cities and flights ◦ each city X has two parts to its name �(X 1 X 2) �and complement (X’ 1 X’ 2) ◦ a flight also has 2 parts �flight from X 1 X 2 to Y 1 Y 2 has sequence: (X 2 Y 1)
Coding the problem � Synthesize: ◦ complements of city names (X’ 1 X’ 2) ◦ flights (X 2 Y 1) �A pinch of each has 1014 molecules ◦ throw them all into a test tube ◦ add water, ligase, salt ◦ one drop, one second!
What happened? � Each flight bonds only with complements of its start and end cities: ◦ flights (X 2 Y 1) ◦ bonds with (X’ 1 X’ 2) and (Y’ 1 Y’ 2) ◦ ligase seals fragments � Sequences grow: ◦ Atlanta-Boston-Chicago ◦ …
Enormous parallelism! � 1014 or so parallel computations! � All paths created at once
Basics of DNA Self-Assembly � Pioneering work by Chris Dwyer et al. ◦ Ph. D at UNC; now faculty at Duke � Key Idea: ◦ Exploit constraints on DNA bonding to design DNA sequences that will only come together in predictable ways ◦ Piggy back components of interest on top of DNA: transistors, wires, etc. � Terminology: ◦ functionalization: attaching DNA strand to a component of interest
Forming a triad � 3 distinct DNA-functionalized objects assemble into a triad if sequences are carefully chosen
Forming a grid � Extend grid � Protein idea to 2 D attached to form the pattern “CAD”
Basic building block: Triangular structure � Three rods, anchored to a solid ◦ assembly in several steps
Cubic unit cell � Extend the triangle into this structure
Electronic components � Transistors ◦ “ring-gated fieldeffect transistor” ◦ RG-FET
Electronic components � Nanowires (gold)
Let’s make a gate! � 2 -input NAND
Give it some structural support � Embed in a DNA cube of insulating unit cells ◦ gray-shaded ones are gates/wires
How many distinct DNA strands? � Simple � More method: economical method: ◦ build one face at a time: only 15 unique sequences!
What about larger structures? � Use hierarchical assembly
Neuromorphic Systems Mimicking neurons in computation
Basic Idea � Departure from von Neumann computing � Distributed, massively parallel � Each compute element is a neuron ◦ basic functions: sum, threshold, emit spike
Retina � Lots of photoreceptors � Feed information to brain via optical nerve
END OF SLIDES
- Sarwan singh kundan singh
- Montek x-1000
- Arti montek
- Montek fawk
- Emerging technology chapter 5
- Emerging technologies in ict
- Emerging technology chapter 2
- It infrastructure and emerging technologies
- Emerging technology chapter 5
- Emerging database
- Emerging database technologies
- Emerging technologies introduction
- Emerging memory technologies
- 8 emerging technologies
- It infrastructure and emerging technologies
- Unity and coherence
- Topic about internet
- Section 7 topic 4 special right triangles answers
- Efficient methods for data cube computation
- Data cube computation
- Umut acar cmu
- Ucl computer science bsc
- Fertilizer computation philrice
- Theory of computation
- Pagerank
- Over recovery of overheads
- Kjeldahl method calculation example
- Expanded withholding tax revenue regulation
- Fertilizer computation
- Verifiable computation
- Two round multiparty computation via multi-key fhe
- Income tax computation format
- Theory of computation
- Introduction to the theory of computation
- Expanded withholding tax computation
- Pagerank computation
- Two-player
- Oral medication calculation formula
- Theory of machines
- Secure multiparty computation
- Calculate drip factor
- Anbncn pda
- Eecs 1019
- The purpose of computation is insight not numbers
- Positional system
- Binary search in secure computation
- Media computation
- Computation history
- Net maintainable rent
- Intake output balance
- Drug calculation formula
- Dfa to nfa
- Expanded withholding tax computation
- Direct computation
- Diagonalization method in theory of computation
- Computation examples
- Theory of computation
- Paradigm of distributed computing
- Pagerank computation
- Computation history
- Computation history
- Cuts of a distributed computation
- Theory of computation quiz
- Union set operation
- Privacy-enhancing computation
- Mcit computation