ECE 573. FULL COLLECTION OF LECTURES ON DESIGN OF SEQUENTIAL CIRCUITS.
By Marek Perkowski
Portland State University
College of Engineering and Computer Science
ECE 573 Design of Sequential Circuits.
Course Schedule, Winter 2006
Updated March 3, 2006
THIS IS
A COMPLETE SET OF SLIDES THAT I USE. MATERIAL FOR THIS YEAR ARE IN ANOTHER DIRECTORY.
PLEASE READ THIS WEB PAGE REGULARLY FOR NEW MATERIAL.
IF SOMETHING IS NOT CLEAR, PLEASE SEND ME AN EMAIL OR TALK TO ME AND I WILL UPDATE
THE PDF FILES AND ADD MORE EXAMPLES.
You should be able to solve all problems given at the end of a file.
Here are the lectures from other classes that may be useful as a background.

ECE 271. Digital System Design. Second class in digital design at PSU. State machines,
digital systems, VHDL, intro to test.

ECE 572. Advanced Logic Synthesis.
Introductory graduate class. Logic synthesis theory, decomposition, multivalued logic,
ReedMuller and Galois circuits.

ECE 510DT. Test and Design for Test.

ECE 510VH. Digital Design using VHDL.

ECE 478. Intelligent Robotics 1.
SOME READING MATERIAL.
Mandatory book for this class is Hachtel/Somenzi. Below I list here all useful materials.
 FSM State Minimization: Micheli, Roth, Kohavi, Somenzi, my paper about state minimization, Midwest 1985..
 Zvi Kohavi, "Switching and Finite Automata Theory." Chapters 9  16.
 P. Ashar, S. Devadas, R. Newton, "Sequential Logic Synthesis". Chapters 3  5.
 Marek Perkowski, "Design, Test and Verification of Sequential Circuits." available from the author. Whole book.
your remarks will help me to improve this book.
 G. DeMicheli, same book as in EE 572, for reference.
 Hachtel and Somenzi, same book as in EE 572.
HOMEWORK 1.
 Create your own WWW Page for this class.
Write about your interests in Finite State Machines, sequential circuits,
design automation, EDA tools, ASIC design, computer architecture and related topics.
Add links to the pages of your interest from the WWW.
If you want to program in LISP, make links to interesting LISP links on WWW.
 PROJECT. Read project descriptions and related links. Start thinking what will be your
project for this class. Talk to me about project.
 Review your C, Pascal, Lisp, or any other language skills, and programming recursion and backtracking for
your project.
HOMEWORK 2.
State Minimization problem.
CHAPTER 1. BASIC SEQUENTIAL MACHINE THEORY AND SYNCHRONOUS FINITE STATE MACHINES.
TOPICS COVERED.
 Class organization. Projects. Grading. Exams.
 Short discussion of class projects for this quarter, and creation of project groups.
 The concept of a Finite State Machine.
 Review on logic and sequential blocks. Use of logic blocks in sequential machines. Shifters, counters.
 Deterministic, nondeterministic, Mealy, Moore, RabinScott.
 Probabilistic Finite State Machines.
 Structural and behavioral theories of state machines.
 Realization of state machines with Flipflops.
 The concept of a sequential circuit, models of finite state machines.
 Synthesis of FSMs.
 Various notations for FSMs.
 Minimization of completely specified FSMs.
 Graphs algorithms for FSM traversal.
 Discussion of various FSM state assignment algorithms.
 Partition Pairs. Hypercubes. MVencoding types.
 State Assignment. Partition Pairs. Exact State Assignment based on Partitions.
 State Assignment. Continuation on Multiline Method based on Partition Pairs. Hypercube Embedding.
 Other algorithms for State Assignment.
 Structural Theory of machines based on partitions.
 Decomposition of FSMs.
 InputOutput Encoding of FSMs and combinational logic.
 Design of state machines in FPGAs.
 Realization of nondeterministic machines.
 Linear Sequential Machines.
 Theory of cellular logic and automata.
MANDATORY READING.
 All mandatory slides.
 Chapter 7 in Hachtel/Somenzi.
 Chapter 8 from Hachtel.
 If you lack background, read chapter 10 in Kohavi, and if necessary, previous chapter(s).
AUXILIARY READING.
 Review chapters 1  5 in Kohavi's textbook if you feel that you need it.
 Read or review chapters in Kohavi and Hachtel/Somenzi about state assignment and structural design of FSMs.
 Read or review state assignment methods from my book.
 Read state assignment method from Kohavi.
 Review on regular layout and design for submicron technologies.
 Review on logic blocks.
 Read the Kohavi and Hachtel/Somenzi textbooks on basic material.
 Chapter 8 from Hachtel/Somenzi.
MANDATORY SLIDES.

Informal and intuitive Introduction to Finite State machines.
Design Flow of Sequential Circuits. Combinational
versus Sequential. Abstraction of State Elements. Forms of sequential logic. Counters.
Common design procedures. State Machine Models.
Ant Brain Machine. Machine versus behavior.
Graphs and tables in design. Synthesis method. Circuit implementation.
Don't cares.
State Minimization. Comparison of Mealy and Moore machines. Traffic Light Controller machine.
FSM Optimization.

Lecture 1.
Introduction to Sequential Machine Theory. Why Sequential Theory, software/hardware.
Formal Languages.
Finite State Machines: Mealy, Moore, RabinScott. Automata. Mathematics. Artificial Intelligence.
Set Theory formulation. Turing Machines. Sets. Relations and Functions.

Lecture 2.
Equivalence. Deterministic and NonDeterministic Finite Automata.
Equivalence Relations. Examples. Inclusion Relation. Partitions and orderings.
Partial Orderings. Total Orderings. POSETs. Languages and automata. Kleene Star.
Kleene Closure. Strings. Recognizers. Graphic Notation for recognizers.
RabinScott automata. Nondeterministic automata. Transformation from NDFA to DFA. Tabular specifications.
Examples.

Lecture 3.
Regular Languages. Languages and Formal Languages.
Strings and substrings.
Kleene Closure. Concatenation operator. Classes of Languages. RuleBased Languages.
Recursive Language Definition. Mathematical Induction.
Induction examples. Regular Languages. Examples. Regular Expressions.

Lecture 4.
Deterministic FA/PDA. Numerical Acceptor. Languages accepted by FA.
Union of languages. Concatenation. Kleene Star. Other operations. Languages versus automata.
Context Free Languages. Nonregular languages. Context Free Grammars. Pushdown Automata.
PDA recognizers. Notations. Examples. Equivalence.

Lecture 6.
(Lecture 5 is missing. It is advanced and it will be covered later on.)
Regular Expression Manipulation FSM model. Null Machine. State Diagram Manipulation.
The Complement Machine.
Language Decidability. Language Overlap. De Morgan Theorem for Languages.
Regular Expression Equivalence. Examples. Product Machines. Equivalence and Reduction.
Mealy and Moore Machines. FSM design approaches. Clocks. Synchronous versus asynchronous.
Examples of detectors. Stable states and races.
Asynchronous FSM problems and properties. Sequential circuits design problems. Set Theoretical Descriptions.

Lecture 7.
Behavioral Equivalence. Examples. Verifying behavioral equivalence of FSMs.
Equivalence of Mealy vs Moore machines.
Mealy/Moore conversions.

Lecture 8.
Morphisms of State Machines.
Free semigroups. Concatenation. Types of relations. Grupoids and semigroups.
Closed Binary Operations. Monoids and groups. Morphisms. Homomorphisms.
Endomorphisms. Monoid Homomorphisms. Isomorphisms. Isomorphism of semigroups.
Machine isomorphisms. Various isomorphisms. Equivalences. Machine homomorphisms. Equivalence.

Introduction to Finite State Machine Minimization. In PDF format.
Algorithmic State Minimization.
Definitions.
Classical State Minimization.
Basic principle of state minimization, regardless representation.
Minimization of completely specified Machine in KISS format.
Method of successive partitions. Examples.
Intro to Triangular Chart method. Adhoc fast procedures.

Advanced FSM minimization. In PDF format.
Examples of application of methods based on compatibles, graphical methods, coverings and closures.

Introduction to state assignment (encoding) of Finite State Machines.
Main assignment strategies. Onehot state assignment.
Heuristics for state assignment.
Output based encoding.
Current State Assignment Approaches.
Hypercube embedding. State Group Identification. Representation of Symbolic Implicants.
Minimization of MultiValued Logic for state assignment.
HyperCube Embedding vs mv logic. Adjacencybased state assignment.
Assigning weights.
Fanout and Fanin oriented assignment methods.
Comparison of methods and CAD tools.

Rule Based State Assignment. In PDF format.
Flipflops. FSM equations.
Complete example of encoding. Discussion of heuristics. Method based on graph of state machine.
Design flow.

State assignment using multiline and partitions. In PDF format.
Partition pairs. Finding pairs from successor. From predecessor.
Operation on multilines. Basic theorem of encoding based on partitions.
Application of the method for Dtype flipflops. Full example.
Selecting partitions from multiline.
Adaptation of the multiline method to JK flipflops.

Example of using state assignment based on rules. In PDF format.
One particular example of this approach analyzed in full detail.
AUXILIARY SLIDES.
 PDF format. Latches and FlipFlops.

PDF. Memory Devices for Sequential Circuits. Types of FlipFlops. Excitation functions.

PDF. Synchronous Sequential Machines. State sequences. Models.
Mealy and Moore machines. Features of state diagrams. Simple examples of designing FSMs.

PDF. Design Examples of Simple State Machines. A sequencer.

Additional material from U.C. Berkeley about FSM minimization. In PDF format.

Additional material about state assignment based on hypercubes and
multiplevalued logic. In PDF format.

Additional lectures from U.C. Berkeley about state assignment. In PDF format.

Additional lecture about FSM minimization, some state assignment also.

Overview paper about state assignment and related FSM topics. In PDF format.

Paper about Two Dimensional State Minimization and Assignment. In PDF format.

Cooperating FSMs. Part 1. In PDF format.

Cooperating FSMs. Part 2. In PDF format.
TOPICS TO BE COVERED BY THE FIRST EXAM.
 Performance Optimization of Finite State Machines.
 State Minimization Problem of FSMs.
 Review of Finite State Machine Minimization.
 Covered and Closed groups of compatibles.
 Algorithms for OneDimensional Minimization of State Machines.
 Equivalence and Isomorphism of state machines.
 Relations of compatibility and equivalence of states.
 State Minimization of Completely Specified Machines.
 State Minimization Algorithms for Incompletely Specified Machines
Maximum Cliques, Maximum Independent Sets.
Covering and Closure.
 TwoDimensional Minimization of State Machines. Inputs and States.
 Asynchronous Machines. Hazards. Creation of machine table.
 Asynchronous Machines. Minimization, Assignment, Realization.
 Asynchronous Machines realized in PLDs.
CY7C361 chip from Cypress.
 State Assignment. Partition Pairs. Exact State Assignment based on Partitions.
 State Assignment: Multiline Method based on Partition Pairs. Hypercube Embedding.
 Other algorithms for State Assignment.
 Use of differentiation elements and FlipFlops for Asynchronous Machines.
QUESTIONS TO FIRST EXAM.

Midterm questoins example.
CHAPTER 2. DIGITAL BLOCKS, SYSTEMS AND ARCHITECTURES.
To be added.
MANDATORY LECTURES AND READING.
 Multiplexers, Decoders, ROMs. Use in design.
 PAL, PLA, EPLD, FPGA. Complex PLD (CPLD).

Arithmetic Circuits. Full adder. Adder/Subtractor. Ripple Carry Chain.
Carry LookAhead adder. Carry Select Adder. Generalization of these Principles.
 Arithmetic Circuits. Serial Adder. ALU, Parity. Comparators. Multiplier.
AUXILIARY READING.
 FourLevel PLA.
 Realization Technologies.
 Modern Tools for VLSI.
 Pass Transistor circuits.
 Design Methodologies in VLSI.
CHAPTER 3. ASYNCHRONOUS FINITE STATE MACHINES AND SYSTEMS.
TOPICS TO BE COVERED AND INCLUDED IN EXAMS.
 Asynchronous Machines. Hazards. Creation of machine table.
 Asynchronous Machines. Minimization, Assignment, Realization.
 Asynchronous Machines realized in PLDs.
CY7C361 chip from Cypress.
 State Assignment methods for asynchronous machines. Hypercube Embedding.
 Other algorithms for realization of Asynchronous Machines.
 Use of differentiation elements and FlipFlops for Asynchronous Machines.
SOURCES OF INFORMATION.
 Assume knowledge from Chapter 8 from Hachtel/Somenzi.
 Kohavi, chapter about asynchronous FSMs.
My book in writing. Here is my text on asynchronous machines without figures and with bugs.
In postscript.
In PDF.
ADDITIONAL PAPERS:
 PAPER:
S. Devadas, H.K.Ma, R.Newton, and A. SangiovanniVincentelli,
MUSTANG: State Assignment of Finite State Machines Targeting Multilevel Logic Implementations.
 PAPER:
A. Ghosh, S. Devadas, K. Keutzer, J. White,
Estimation of Average Switching Activity in Combinational and Sequential Circuits.
ADDITIONAL SLIDES:

CHAPTER 4. OPTIMIZATION METHODS. EVOLUTIONARY AND OTHER.
SECTION 4.1. MANDATORY LECTURES AND READING.

Lecture on evolutionary programming approaches. Related to the project. Part 1. PPT format.
Genetic algorithms and other approaches for similar applications.
Optimization techniques. Genetic Algorithm.
Example of convergence.
Basic principles of evolutionary algorithms.
Coding. Crossover and mutation. Onepoint crossover. Twopoint crossover.
Uniform crossover. Other. Problems with crossover. Parent/survivor selection.
Example of coding the Travelling Salesman Problem.
Roulette wheel. Tournament. Problems with fitness range.
Fitness function. Fitness scaling. Fitness windowing. Fitness ranking. Fitness Evaluation.
MultiCriteria Fitness. Other parameters of GA.
Simulated Annealing. Annealing Process. Metropolis loop. Metropolis criterion. Algorithm.
Control parameters. Examples.
Tabu search algorithms. Problems and examples. Combined methods. Hill climbing.
The same slides in PDF Format.
Lecture on evolutionary programming approaches. Especially genetic
programming. Related to the class project. PPT format.
Evolutionary methods. Genetic programming.
Genotype and Phenotype. General architecture of Evolutionary algorithms.
Background and history of Genetic Programming. Works of Koza. What is
a Genetic Program. Computer Programs and Trees. Breeding computer programs. The Fitness Test.
Mutation and Crossover. Examples.
New Lecture
on Evolutionary Algorithms. PDF format.
Links of evolutionary algorithms to other topics of this class.
Natural Computing. From Darwin to GA. Concepts from Genetics. GA structures.
Bibliography. Taxonomy of Evolutionary Algorithms. History. Metaphores.
Genetic Algorithm for MAXONE problem. Inspiration by natural evolution.
Discrete representations of various types of data in GAs.
Codes of GAs. Link between GA and the problem. Coding. Examples of problem
formulation. Crossover. Mutation. Diversity. Parents selection. Fitness Proportionate Selection.
Examples. Roulette wheel. Parent selection. Tournament selection methods.
Mixed Parent/Survivor Selection Strategies. Fitness function. Problems with Fitness range.
Solutions. Fitness scaling, windowing, etc. Examples of fitness landscapes.
MultiCriterion fitness. Other parameters of GA. Applications of Evolutionary Algorithms.
Advantages and
disadvantages of EAs. Evolutionary Programming: individuals, fitness, etc.
Evolution strategies. Function Optimization. Representation of a real number.
Conversion.
Lecture on Evolutionaryalgorithms. Continued.
In PDF format.
Evolutionary Algorithm Variants,Theory and Ideas. Theoretical Background. Events and stochastic processes.
Markov chains. Abstract EAs. Convergence to optimum. Introduction to GA theory.
Schemata. Counting Schemata. Implicit parallelism of EAs. How schema affect solutions. Fitness of schema.
The Schema Theorem. The Building Block hypothesis. Deceptions and remedies to it.
Alternative Selection Methods. Greedy Overselection. Alternative Crossover methods.
Constrained Crossover.
Shuffle Crossover. Arithmetical Crossover. Selective Crossover.
Alternative mutations. Nonuniform mutation. Inversion of bit order as mutation. Alternative GA structures.
CHC Adaptive Search Algorithm. Heterogeneous Recombination. Diversity. HUX Crossover. Class projects.
 Evolving Quantum Circuits with Genetic Algorithms and through Exhaustive Space Search.
Technology for Quantum Computing. NMR processors. Qubits
and quantum layout problem. Moleculedriven layout and logic synthesis.
The role of swap gates and their avoidance.
Swap from Feynman and transformation tricks.
Examples of cascades from elementary and nonelementary quantum gates.
Encoding of quantum circuits for GA.
Genetic operators. Fitness function. Transformations collaborate with GA to find the cheapest quantum gates.
Exhaustive search approaches to minimal quantum circuits.
Examples of synthesis with our programs. What can be improved and future student projects.
Generalized gates. Future ideas. Baldwinian and Lamarckian learning.
General directions for future projects. Statistical analysis of nonlinearity in synthesized circuits.
Evolving Fitness Function for QC synthesis.
Pareto Optimality GA and QC synthesis.
Exploring GA for QC by modifying parameters and settings.
PPT format. With animations. Not for print.
PDF format. Print format.
SECTION 4.2. AUXILIARY READING.
 General project requirements. Please contact Mr. Martin Lukac if you have any questions or
difficulties.
word format
PDF Format.
 M. Perkowski, M. Lukac, M. Pivtoraiko, P. Kerntopf, M. Folgheraiter,
D. Lee, H. Kim, W. Hwangbo, JW. Kim, YW. Choi, "A Hierarchical
Approach to ComputerAided Design of QUantum Circuits."
The paper written with the 2002/2003 KAIST class.
It was published in the Proceedings of the 6th International Symposium
on Representations and Methodology of Future Computing Technology, March 10 11 2003, Trier, Germany.
We should improve on these results in the new paper to be published.
PDF Format.
 SOFTWARE FOR PROJECT TWO1.
ZIP file for Project 1.
 SOFTWARE FOR PROJECT TWO2.
ZIP file for Project 2.
 SOFTWARE FOR PROJECT TWO3.
ZIP file for Project 3.
 SOFTWARE FOR PROJECT TWO4.
ZIP file for Project 4.
 SOFTWARE FOR PROJECT TWO5.
ZIP file for Project 5.

Report of Yong Duk Kim. Word format.

Report of Hilton Goi and Kyusik Chung. Word format.
 Final Project Report Group 5.
Report of Byungguk Kim and Changhyo Yu. Word format.
CHAPTER 5. QUANTUM DOT CELLULAR AUTOMATA AND REGULAR STRUCTURES.
SECTION 5.1. MANDATORY LECTURES AND READING.
 Lecture slides. Logic of Quantum Dot Cellular Automata.
PDF format
What are quantum dots? Why are quantum dots important?
Mass production of quantum dots? Patterning of quantum dots.
QCA  the four dot device. Quantum dots operate as cellular automata.
Five dot model of Lent and Porod. Quantum Dot Wire. Four dot model.
Example of complete geometricallogical system for QD.
Inverters. Majority gates. Wires. How Majority works. QCADesigner. Rules for layout.

Slides with Quantum Dot Cellular Automata Homework explanation. In PPT format.
See below for more materials useful to solve the homework.
SECTION 5.2. AUXILIARY LECTURES AND READING USEFUL FOR HOMEWORKS AND PROJECTS.
 Basic Quantum Dot Paper.
Paper about realizing computer architecture using quantum dot technology.
M. Niemier, M. Kontz, P. Kogge. A Design and Design Tools
for a Novel Quantum Dot Based Microprocessor. In PDF format.
 Paper about Lattice Diagrams.
M.Perkowski, M. ChrzanowskaJeske and Y.Xu, "Lattice Diagrams Using ReedMuller Logic",
PDF Format. This paper explains how arbitrary combinational function can be mapped to lattice structures.
The method can be extended to multioutput functions, finite state machines and cellular automata.
 Paper about Lattice Diagrams and
generalized symmetries.
B. Drucker, C. Files, M. Perkowski, M. ChrzanowskaJeske,
"Polarized, PseudoKronecker Symmetry and Synthesis of 2*2 Lattice Diagrams." PDF Format.
Paper to read about expansion to lattices to be used
in reversible cellular computing.

M. Perkowski and A. Mishchenko.
Logic Synthesis for Regular Fabric realized in Quantum Dot Cellular Automata.
Paper in writing about QDCA.
This is useful for homework. Paper is not completed and you can contribute to it.

Gary Bernstein. (Notre Dame University).
Quantum Dot Cellular Automata: Computing by Field Polarization. Paper in PDF format
about QD CA, background material.

Tim Bentley. Useful notes in PDF format with discussion about QDCA technology.

Slides by Tim Bentley.pdf Useful slides on design of QDCA circuits.

M. Niemier, A. F. Rodriques, and P.M. Kogge. (Notre Dame).
A Potentially Implementable FPGA for Quantum Dot Cellular Automata. In PDF format.
Another useful paper.

Another set of slides on QDCA. In PDF format.
 Introductory paper by Fredkin
about "Digital Philosophy" and "Digital Mechanics". This is your starting point.
 DP Publications Webpage
 Wolfram's book. Do not read it. Only find relevant examples. This is a great book but to thick
to read in one quarter.

G. Snider et al. Quantum Dot Cellular Automata: Line and Majority Logic Gate.
Fundamental paper.

Snider et al. Quantum Dot Cellular Automata. Review and Recent Experiments.
Overview paper from 1999.

A. Vetteh, K. Walus, V. Dimitrov and G. Jullien.
QuantumDot Cellular Automata CarryLookAhead Adder and Barrel Shifter.
Useful paper with examples. Useful for projects and homeworks.

K. Walus, T. Dysart, G. Jullien, A. Budiman.
QCADesigner: A Rapid Design and Simulation Tool for QuantumDot Cellular Automata.
Description of CAD tool for QDCAs. In PDF format.

Wei Wang, Konrad Walus and G.A. Jullien.
QuantumDot Cellular Automata Adders.

Niemier et al. A Potentially Implementable FPGA for Quantum Dot Cellular Automata.
A set of slides.

M. Tahoori et al. Defects and Faults in Quantum Dot Cellular Automata at Nano Scale.
Paper how to detect faults in QDCAs. In PDF format.

M. Baradaran Tahoori and F. Lombardi.
Testing of Quantum Dot Cellular Automata Based Designs. DATE2004. In PDF format.

K. Walus, G.A. Jullien, and V.S. Dimitrov.
Computer Arithmetic Structures for Quantum Cellular Automata. Asilomar2003.
In PDF format.

K. Walus, G.A. Jullien, and V.S. Dimitrov.
Poster.

Nationalnanotechnologyinitiative.pdf
This last papers shows where the technology and funding is going.
CHAPTER 6. CELLULAR AUTOMATA AND ARTIFICIAL LIFE.
Often, cellular automata are build using FPGAs and programmed using
Evolutionary Algorithms.
Reversible Cellular Automata use concepts of reversible logic.
So now you are prepared for more complex projects in reversible cellular automata
and their realizations in various technologies.
The same refers to pipelined, systolic, etc. processors.
SECTION 6.1. MANDATORY LECTURES AND READING.

Lecture Introduction to Cellular Automata and Artificial Life
Cellular Automata. Life  the game. History of Cellular Automata: Conway.
Variants of game of life rules. Types of patterns. Importance of Cellular Automata as models
of Universe. Simulation using CAs. Neighbourhoods. States and patterns. Dynamics.
Global and local. Classification of Cellular Automata. Automata Theory. Cellular Automata formalism.
Classification by Wolfram.
Complexity. Universal Machines  Stanislaw Ulam. Von Neumann Machines. Reproduction.
Chaos Theory and dynamical systems. Chaotic Dynamics. Cellular Automata as Dynamical Systems.
New research areas. Possible homeworks and projects.
 Lecture 6.1. ThreeDimensional Cellular Logic Illustration.
 PDF format
 Lecture 6.3. Cellular morphogenesis.
PDF format.
Dynamical Systems and Cellular Automata. Morphogenetic modeling.
Space and geometry. Discretization for Cellular Automata has many aspects.
Wolfram Rules and Temporal Evolution. CA as a metaphor for morphogenesis.
CA rule mutations. Prediction and predictability. Examples. Patterns and morphology.
Genotype and Phenotype.
 Lecture 6.4. Cellular Automata. Analysis and Examples.
PDF format.
Review. Analysis of onedimensional CA. Homeworks.
2D CA. Examples. Links between GA and CA.
Density classification tasks.
 Lecture 6.5.
About CAbased Random Number Generation, Cryptography and Cellular Reversible Automata
PDF format
Current Random Number Generators. Linear Feedback Shift Register.
A CA Random Number Generator. Hybrid Cellular Automata. CABased Cipher Systems.
Ciphers. Cipher classification. Block ciphers. CA Block Cipher.
CA Cycles. Hybrid CA. Examples. Key space. Stream Cipher. Stream Cipher key. Computations with CAs.
Signal Pathways. Signal Propagation Rules. Logic Operation Rules.
Reversible Cellular Automata.
Blocking. Reverse behavior. A Billiard Ball model of computation as a CA.
 Lecture 6.6. Lecture by Norm Margolus about Physical Reversible Models
PDF format
Physics becomes the computer. Emulating physics. Reversibility and other conservations.
Adding conservations. Diffusion rule. TM Gas rule. Lattice gas refraction. Lattice gas
hydrodynamics. Dynamical Ising rule. Bennett's 1D rule. 3D Ising with heat bath.
2D "Same" rule. Reversible aggregation rule. Adding forces irreversibly. Conservations summary.
 Lecture 6.7. Lecture 2 by Norm Margolus
PDF format
Review: why emulate physics. Physical Worlds. Computation Universality.
What's wrong with Life? Billiard Ball Logic reminder. A BBM CA rule. The Critters rule.
Critters is universal. UCA with momentum conservation. SSM collisions on other lattices.
Getting rid of mirrors. The rest particle. Signal Complement. Macroscopic universality.
Relativistic conservation. Can we add macroscopic forces?
 Lecture 6.8. Lecture 3 by Norm Margolus
PDF format
Spatial computers. CAM 1 to 6.
CAM8 Programming model. CAM8 node. Lattice example. Materials simulation. Logic simulation.
Porous flow. Image Processing.
FPGA node design. Embedded DRAM. SPACERAM: A general purpose crystalline lattice computer.
Mapping a lattice into hardware.
 Lecture 6.9. Lecture by Michael Frank about reversible processors from MIT
PDF format
Reversible architectures: why? All known reversible architectures. Reversible Programmable Gate
Array Architectures. FlatTop reversible mesh processor. Examples and rules.
BBMCA update rule. Grid of FlatTop processing elements. Layout and logic. Analysis.
 Lecture 6.10. Lecture about Von Neumann selfreproducing automata
PPT format
General question. Von Neumann Neighborhood. States in Von Neumann Automaton.
Ordinary Transmission States. Quiescent State. Confluent States. Pulsers. Decoder.
Repeater. Special Transmission states. The Destruction Process. Sensitive States.
The Sensitized tree. The Construction Process. Periodic Pulser. Coded Channel. Transition and Output Table.
Automata. Constructing Arm. Horizontal Advance. Vertical Advance of Constructing Arm.
Horizontal Retreat of Constructing Arm.
Vertical Retreat of Constructing Arm.
Injection of Starting Stimulus. Reading Loop. Constructing Arm. Universal Computer.
Universal Constructor. Automata Selfreproduction. Cellular Automata as Viruses.
Virus types and categories. Computer versus Biology. Virus versus Artificial Life.
 Example: Hexagonal.
An interesting example of hexagonal systolic architecture  different than those from the class.
PDF format.
SECTION 6.2. AUXILIARY MATERIALS ABOUT REGULAR STRUCTURES AND CELLULAR AUTOMATA
 CA versus RL.
A. Buller and M. Perkowski, "Cellular Automata Realization of Regular Logic." PDF Format.
Paper about reversible cellular structures. TO be published soon, you may contribute to extensions
and improvements of these ideas.
 Evolving for CAM brain.
A. Buller and M. Perkowski, "Evolved Reversible Cascades Realized on the CAMBrain
Machine (CBM)". PDF Format.
Paper from NASA 2003 Conference on Evolvable Hardware about cellular automata realization of
elementary reversible circuits. Easy to understand. New research. For projects and homeworks.
Word format
PDF format
This is only the introduction to cellular automata, necessary to start working on projects.
We will learn more about cellular automata after first learning about the FPGAs
and how they can be realized.
SECTION 6.3. STUDENT PRESENTATIONS OF THEIR PROJECTS.
 STUDENT PRESENTATIONS 1.
Presentation of student Hilton Tamanaha Goi about "Newton Generalized Game of Life".
Goi's Game of Life, PPT format
Hilton Game of Life, PPT format
Hilton Game of Life, Natural Disaster. Matlab format
Hilton Game of Life,
Population Control. Matlab format
Hilton Game of Life,
Stable Oscillator. Matlab format
 PRESENTATIONS 2.
Presentation of student Yong Duk Kim about generalization of "Game of Life" using genetic algorithm.
Zipped files Look here for all software
and data files
Generalized Game of Life presentation. PDF Format.
 PRESENTATIONS 3.
Presentation of student Byungguk Kim about finding good parameters for generalized Game of Life.
His webpage with class material.
TAR formatted files
Generalized Game of Life presentation. PDF Format.
 PRESENTATIONS 4.
Presentation of student Hyunkoo Jee in your "Emerging Computer Technologies" class.
His webpage with class material.
ZIP files of his work
Finding Sorting Algorithm Using Genetic Programming.
PDF Format.
 PRESENTATIONS 5.
Presentation of student Changhyo Yu of his work on Cellular Automaton for Generalized Game of Life.
PPT format
ZIP files
 PRESENTATIONS 6.
Presentation of student Kyusik Chung of his work on Cellular Automaton for Generalized
Game of Life.
ZIP files
Game of Life for the 21st Century. Presentation in Class.
PDF Format.
 PRESENTATIONS 7.
Report of Hilton Goi on A New Method of Edge Detection Based on a Cellular Automaton.
Word format. (.doc).
CHAPTER 7. EVOLVABLE HARDWARE.
MANDATORY LECTURES.
AUXILIARY READING MATERIAL FOR EVOLUTIONARY ALGORITHMS AND EVOLVABLE HARDWARE
CHAPTER 8. VALIDATION, TESTING AND VERIFICATION OF SEQUENTIAL SYSTEMS.
To be added.
MANDATORY LECTURES AND READING.
BDD
AUXILIARY READING.
Homework about BDDs and MV BDDs.
CHAPTER 9. FIELD PROGRAMMABLE GATE ARRAYS (FPGAs) AND RECONFIGURABLE COMPUTERS.
MANDATORY LECTURES AND READING.
AUXILIARY READING MATERIAL FOR REGULAR LOGIC AND CELLULAR AUTOMATA
 REGULAR 9.1. Hough Transform. This transform, or rather family of transforms
has practical applications in industrial and military computer vision.
It is a big challenge to design a fast Hough transform in hardware, so many challenging
projects related to pipelined, systolic or parallel realization of Hough Transforms
are possible. You can expect similar problems on final exam.
 REGULAR 9.2.
Satisfiability Engines, Petrick Function Solvers and
Hardware Boolean Solvers
This is another class of challenging problems for parallelization and systolization.
Satisfiability Machine Design. PDF Format. .
Design of regular hardware for SAT engine.
 REGULAR 9.3.
DNA Processors
These processors are used for matching and other operations in DNA engineering.
Application to the comparison of sequences. PDF Format.
Presentation of DNA problems and a Systolic Processor for DNA. Possible to be used in
projects. We designed a very simplified DNA matching processor  pipelined, in our additional class
meetings.
 4. Standard Systolic Architectures for matrices and vectors.
 SYSTOLIC 9.4.1. Analysis of systolic convolution.
PDF format.
PPT format
 SYSTOLIC 9.4.2. Systolic Matrix Multiplication.
PDF format
PPT format
 SYSTOLIC 9.4.3.
Lecture about systolic architectures with good matrix and vector manipulation examples.
PDF format.
PPT format.
 SYSTOLIC 9.4.4.
Lecture about parallel processing and systolic architectures with good examples.
PPT format.
 SYSTOLIC 9.4.5.
Parallel algorithms and systolic processors.
PDF format.
PPT format.
 SYSTOLIC 9.4.6.
Reconfigurable parallel architectures  examples of systolic.
PDF format.
PPT format.
 SYSTOLIC 9.4.7.
Paper about Hardware Based Realization of Genetic Algorithm.
PDF format.
 SYSTOLIC 9.4.8.
SpecialPurpose Mesh Architectures  examples of Systolic.
PDF format.
PPT format.
 SYSTOLIC 9.4.9.
Lecture of Andre de Hon from Caltech about Systolic Architectures. Examples!!
PDF format.
PPT format.
 5. Digital Signal Processors and Image Processors
 6. Design of new types of FPGAs, EPLDs and configurable boards.
CHAPTER 10. PROGRAMMING LANGUAGE LISP.
This is only auxiliary material for those who want to learn programming quickly.
LISP Readings.
We will use Kyoto Common Lisp, available on PSU network. To call it, just type
kcl
The prompt will occur, and you can type
(car '(a b c))
to verify that it works.
INFO IS IN KCL FAQ
COMPLETE MANUAL IN REVERSE ORDER
AS A POSTSCRIPT FILE IS HERE:
KCL MANUAL,REVERSED.
Here are some additional resources about this language.
link2
Lattice Diagrams program ideas  Mascarenhas Ryan Paschal.
Demo of ORCADEXPRESS CAD Tools and discussion of industrial tools.
Dave Matson's LISPbased Fault Simulator.
CHAPTER 11. DNA COMPUTING
SECTION 11.1. MANDATORY LECTURES AND READING.
 Lecture 11.1. First Lecture on DNA Computing.
PDF format
What is molecular computing? Biocomputing versus Bioinformatics. Artificial Intelligence
and biology. Nanotechnology. Introduction to Molecular Biology.
Broad Generalization: Proteins versus DNA. Protein Molecules. DNA Action.
Enzymes. Mass Parallel operation on Enzymes. Genetic Code. Cells
and DNA as Computers and Memories. Myoglobin gene.
What is Biological Computing. Approach 1: Construct logic gates within Cells.
Molecular Electronics: AND gate and OR gate. First Approach: results.
Approach 2: Use DNA to perform calculations. What is molecular computing.
What is DNA computing? DNA computing is a different approach.
What are the advantages of DNA computing? What is DNA?
History. The Double Helix. DNA structure. Single Strand.
Double Strand. Nitrogenous Bases. InterStrand Hydrogen Bonding.
DNA as a data structure. Using enzymes for DNA manipulations.
DNA computing takes advantage of these. Operations with DNA.
Physical Operations. The biolab technology: DNA process.
Separating DNA strands. Completing Sticky Ends. Strand Hybridization.
DNA replication. DNA Ligation. Polymerase Chain Reaction. Using primers.
Complete PCR process. Filtering. Separation by length. Reading. Gel Electrophoresis.
Affinity Separation. Restriction Endonucleases.
 Lecture 11.2. Second Lecture on DNA Computing.
PDF format
Adleman's DNA algorithm for Hamiltonian path. The Travelling
Salesman Problem. Hamiltonian Graph. Brief History. The Hamiltonian Path Problem.
Adelman's DNA Algorithm for Hamiltonian Path.
Step 1: Generate all routes using Ligase. Graph Encoding with DNA.
DNA computer for this problem. Generating Routes.
Use PCR to remove bad starts and ends. Affinity purification.
Step 2. Step 3: Gel Electrophoresis. Step 4. Affinity Purification.
Magnetized Balls. Step 5. PCR amplify. Adleman experiment: results.
Problems with Adleman's Approach to DNA computing. New generation of computing?
Sticker Model. Operations on a sticker machine. Future Sticker Machines.
Why try DNA computing? Known CMOS limitations. Future Technology Enablers.
Historical Timeline of DNA Computing. DNA computers versus Conventional Computers.
Practial Issues. Reliability. Is biological computing practical? DNA versus silicon.
DES example. Implementation. Minimal Set Cover example. Pros and Cons DNA Computing.
Future of DNA computing. The OLYMPUS DNA Computer.
SECTION 11.2. AUXILIARY MATERIALS ABOUT DNA COMPUTING
 DNA 11.1.
A survey of BioMolecular Technologies
PDF Format
John H. Reif. The Emergence of the Discipline of Biomolecular Computation in US.
 DNA 11.2.
Review of DNA Technology.
PDF Format
Carlo C. Maley. DNA Computation: Theory, Practice, and Prospects.