A Reversible MC68HC11 Simulator and Its Empirical Computational Complexity Charles Vermette CIS 4914 Senior Project May 30, 2001.

Slides:



Advertisements
Similar presentations
Register Allocation Zach Ma.
Advertisements

Recursion vs. Iteration The original Lisp language was truly a functional language: –Everything was expressed as functions –No local variables –No iteration.
Information Reading: Complexity: A Guided Tour, Chapter 3.
June 13, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
1 A Introduction to Data Structures and Algorithm Analysis Data Structures Asst. Professor Kiran Soni.
Recursion. Review  Recursive solutions, by definition, are built off solutions to sub-problems.  Many times, this will mean simply to compute f(n) by.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
ELECTRICAL ENGINEERING: PRINCIPLES AND APPLICATIONS, Third Edition, by Allan R. Hambley, ©2005 Pearson Education, Inc. Chapter 8 Microcomputers.
CSci6702 Parallel Computing Andrew Rau-Chaplin
New Mexico Computer Science For All Algorithm Analysis Maureen Psaila-Dombrowski.
DATA STRUCTURES (CS212D) Overview & Review Instructor Information 2  Instructor Information:  Dr. Radwa El Shawi  Room: 
1 ADT Implementation: Recursion, Algorithm Analysis Chapter 10.
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Recursion,
Sub-fields of computer science. Sub-fields of computer science.
Introduction toData structures and Algorithms
Complexity Analysis (Part I)
Advanced Algorithms Analysis and Design
Review Array Array Elements Accessing array elements
Formal Foundations-II [Theory of Automata]
AP Computer Science Principles
Why study programming languages?
Interpreted languages Jakub Yaghob
A Closer Look at Instruction Set Architectures
GC 211:Data Structures Week 2: Algorithm Analysis Tools
GC 211:Data Structures Algorithm Analysis Tools
Turing Machines Space bounds Reductions Complexity classes
Optimization Code Optimization ©SoftMoore Consulting.
Big Ideas in Computer Science
DATA STRUCTURES Introduction: Basic Concepts and Notations
Things You Should Know When You Want To Start Programming
Theory of Algorithms Introduction.
Data Structures (CS212D) Overview & Review.
Foundations of Computer Science
CMSC 341 Prof. Michael Neary
Parallelizing Dynamic Time Warping
Digital Processing Platform
C Structures, Unions, Bit Manipulations and Enumerations
Central Processing Unit
Foundations of Technology Mr. Brooks
Objective of This Course
Lesson Objectives Aims You should be able to:
Graph Paper Programming
CS212 Data Structures 2018 Second Semester.
Physical Limits of Computing Dr. Mike Frank CIS 6930, Sec
Module #7: Algorithmic Complexity
What to do when you don’t know anything know nothing
Computer Architecture and the Fetch-Execute Cycle
ME 123 Computer Applications I
Data Structures (CS212D) Overview & Review.
Operating System Chapter 7. Memory Management
The use of Neural Networks to schedule flow-shop with dynamic job arrival ‘A Multi-Neural Network Learning for lot Sizing and Sequencing on a Flow-Shop’
Quantum Computation and Information Chap 1 Intro and Overview: p 28-58
Module #7: Algorithmic Complexity
CS 322 week 1 summary Syllabus-grouping-grading, grading policy – fairness - NO cheating, gap-based classification/SVM CS: problem solving by computers.
Revision of C++.
Presented By: Darlene Banta
COP3530- Data Structures Introduction
Quiz: Computational Thinking
CSE 373: Data Structures and Algorithms
Optimizing Compilers CISC 673 Spring 2009 Course Overview
Student : Yan Wang student ID:
Complexity Analysis (Part I)
A Reversible MC68HC11 Simulator and Its Empirical Computational Complexity Charles Vermette CIS 4914 Senior Project August 7, 2001.
CMPE 152: Compiler Design May 2 Class Meeting
Complexity Analysis (Part I)
Advanced Analysis of Algorithms
Dr. Clincy Professor of CS
Algorithms Tutorial 27th Sept, 2019.
CS 322 week 1 summary Syllabus-grouping-grading, grading policy – fairness - NO cheating, gap-based classification CS: problem solving by computers with.
Presentation transcript:

A Reversible MC68HC11 Simulator and Its Empirical Computational Complexity Charles Vermette CIS 4914 Senior Project May 30, 2001

Problem Solution Motivation Hard data is needed to prove theoretical behavior of simulation algorithms on a real architecture. Solution Simulate a real irreversible machine on a real reversible architecture and record time/space complexity. Motivation Why? Work will aid in research into reversible computing. Why me? Interested in subject matter. Some previous experience.

Week Task 1-2 Read research material. 3-4 Design simulator. 5-8 Code and incrementally test simulator. 9 Test completed simulator. 10-11 Use simulator to simulate programs and gather complexity data 12 Analyze data to determine constant factors in space/time complexity. 13 Final report due. 14 Final presentation.

Literature Sources C. H. Bennett. Logical reversibility of computation. IBM J. Research and Development, 17(6):525-532, 1973. C.H. Bennett. Time/space trade-offs for reversible computation. SIAM J. Computing, 18(4):766-776, 1989. M. P. Frank. Reversibility for Efficient Computing. (unpublished manuscript), 1999. R. Y. Levine and A. T. Sherman. A note on Bennett’s time-space tradeoff for reversible computation. SIAM J. Computation, 19(4):673-677, 1990. M. Li, J. Tromp, P. Vitány.Reversible Simulation of Irreversible Computation. Physica D, 120:168-176, 1998. Motorola, Inc. M68HC11 E Series Programming Reference Guide. (product information pamphlet), 2000.

Problems & Solutions Problem: Create a garbage stack in R language. Solution: No dynamic memory, so use array stack. No assignment, so use swap both to get clean memory and push garbage on. Problem: Reduce wasted memory in garbage stack. Solution: Pack all garbage information into a single 32-bit word.