Spring 2006 1 EE 316 Computer Engineering Junior Lab Designing State machines for a numeric Keypad.

Slides:



Advertisements
Similar presentations
L7 – Derivation of State Graphs and Tables – Moore Machines.
Advertisements

Analysis of Clocked Sequential Circuits
TOPIC : Finite State Machine(FSM) and Flow Tables UNIT 1 : Modeling Module 1.4 : Modeling Sequential circuits.
Classification of Digital Circuits  Combinational. Output depends only on current input values.  Sequential. Output depends on current input values and.
1 EE121 John Wakerly Lecture #8 Sequential Circuits Flip-flops Sequential PALs.
1 EE365 Sequential-circuit analysis. 2 Clocked synchronous seq. circuits A.k.a. “state machines” Use edge-triggered flip-flops All flip-flops are triggered.
1 EE121 John Wakerly Lecture #10 Some shift-register stuff Sequential-circuit analysis.
Unit 13 Analysis of Clocked Sequential Circuits Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
ECE 353 Computer Systems Lab II VHDL AND LABORATORY TOOLS TUTORIAL Professors Maciej Ciesielski & T. Baird Soules.
Spring 20067W. Rhett Davis with minor modifications by Dean Brock ECE 406 at UNASlide 1 ECE 406 Design of Complex Digital Systems Lecture 10: 9: State.
6/12/20151 Sequence Detectors Lecture Notes – Lab 4 Sequence detection is the act of recognizing a predefined series of inputs A sequence detector is a.
EE 316 Computer Engineering Junior Lab Project 1: Traffic Light Controller.
EE 316 Computer Engineering Junior Lab Word Mastermind.
EE 316 Computer Engineering Junior Lab PS/2 Keyboard.
GamePal  Mark Fedorak  Vera Casteel  Ron Smith  Kris Pucci.
Spring EE 316 Computer Engineering Junior Lab Serial Ports.
Spring EE 316 Computer Engineering Junior Lab LCD modules, PROMs, Serial Ports.
Asynchronous FSMs and Verilog. PLD registered output.
EECC341 - Shaaban #1 Lec # 14 Winter Clocked Synchronous State-Machines Such machines have the characteristics: –Sequential circuits designed.
ENGIN112 L31: Read Only Memory November 17, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 31 Read Only Memory (ROM)
A clocked synchronous state-machine changes state only when a triggering edge or “tick” occurs on the clock signal. ReturnNext  “State-machine”: is a.
ECE 301 – Digital Electronics Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #17)
ECE 331 – Digital Systems Design Introduction to Sequential Logic Circuits (aka. Finite State Machines) and FSM Analysis (Lecture #19)
EE365 Adv. Digital Circuit Design Clarkson University Lecture #10 Latches, Flip Flops & Sequential PALS.
EE 316 Computer Engineering Junior Lab Digital Hangman.
ENGIN112 L25: State Reduction and Assignment October 31, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 25 State Reduction and Assignment.
Lessons from last lab: 1.Many had the “# skipping” problem 2.Most assumed there was something wrong with their code 3.How does one check their code? 4.SIMULATE!!
CS 151 Digital Systems Design Lecture 31 Read Only Memory (ROM)
ECE/CS 352 Digital System Fundamentals© T. Kaminski & C. Kime 1 ECE/CS 352 Digital Systems Fundamentals Spring 2001 Chapter 4 – Part 3 Tom Kaminski & Charles.
Dr. H.v.d.Biggelaar / Mar3-Ver2 / 1 Engineering Technology Dr. H.v.d.Biggelaar March 22, 2000 State Machines in VHDL.
L5 – Sequential Circuit Design
State Machines.
Unit 14 Derivation of State Graphs
Lecture 4 – State Machine Design 9/26/20081ECE Lecture 4.
University of Houston ECE 5440/6370 Advanced Digital Design Lecture on Debouncing Circuit Yuhua Chen Spring 2010.
ECE 3130 – Digital Electronics and Design Lab 6 State Machines Fall 2012 Allan Guan.
Important Components, Blocks and Methodologies. To remember 1.EXORS 2.Counters and Generalized Counters 3.State Machines (Moore, Mealy, Rabin-Scott) 4.Controllers.
Unit 13 Analysis of Clocked Sequential Circuits Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
Fall 2004EE 3563 Digital Systems Design EE3563 Chapter 7, 8, 10 Reading Assignments  7.1, 7.2, 7.3  8.1, ,   8.5.1, 8.5.2,
EE121 John Wakerly Lecture #11
1 ECE 372 – Microcontroller Design Parallel IO Ports - Inputs.
ANALYSIS OF SEQUENTIAL CIRCUITS by Dr. Amin Danial Asham.
Sequential Circuit: Analysis BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
1 EE121 John Wakerly Lecture #12 PLD-based state machine structures WITH statements Finite-memory state-machine design PLD-based state-machine design.
CEC 220 Digital Circuit Design Timing Analysis of State Machines
Registers; State Machines Analysis Section 7-1 Section 5-4.
EE 316 Computer Engineering Junior Lab Project 2 Digital Yahtzee.
1 State Reduction Goal: reduce the number of states while keeping the external input-output requirements unchanged. State reduction example: a: input 0.
Digital Electronics and Computer Interfacing Tim Mewes 3. Digital Electronics.
Interfacing to External Devices  Explore Digital Interfaces techniques  Introduce some complex optical devices and how to interface them  Describe methods.
CEC 220 Digital Circuit Design Mealy and Moore State Machines Friday, March 27 CEC 220 Digital Circuit Design Slide 1 of 16.
1 COMP541 Finite State Machines - 1 Montek Singh Sep 22, 2014.
Flip Flops 4.1 Latches and Flip-Flops 4 ©Paul Godin Created September 2007 Last edit Sept 2009.
Sequential Circuit: Design BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Dr. Shi Dept. of Electrical and Computer Engineering.
State Machine Design State Machine Design Digital Electronics
ECE 447: Lecture 12 Keypads ECE 447: Lecture 10. ECE 447: Matrix Keypad.
Govt. Engineering College- Gandhinagar. It is all about……  STATE MACHINE.
State Machine Design Shiva choudhary En No.: Electronics and comm. Dept K.I.T.,Jamnagar 1.
Mealy and Moore Machines Lecture 8 Overview Moore Machines Mealy Machines Sequential Circuits.
1 COMP541 Sequential Logic – 2: Finite State Machines Montek Singh Feb 29, 2016.
Exp#7 Finite State Machine Design in Verilog COE203 Digital Logic Laboratory Dr. Ahmad Almulhem KFUPM Spring 2009.
INF3430 / 4431 Synthesis and the Integrated Logic Analyzer (ILA) (WORK IN PROGRESS)
ANALYSIS OF SEQUENTIAL CIRCUITS
Introduction to Advanced Digital Design (14 Marks)
ECE 434 Advanced Digital System L12
KU College of Engineering Elec 204: Digital Systems Design
EE2174: Digital Logic and Lab
SYEN 3330 Digital Systems Chapter 6 – Part 3 SYEN 3330 Digital Systems.
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Presentation transcript:

Spring EE 316 Computer Engineering Junior Lab Designing State machines for a numeric Keypad

Spring Topics  Designing a state machine to detect key press  PLD based design  Mealy or Moore?  Is clock frequency an issue?  Debouncing issues

Spring Keypad Hardware GAL22V10 } Ready or Enable Column Scan Detection of Key press=> input to the state machine Code for Key press: Output of the State machine Clock State Machine 9 Outputs?

Spring Design alternatives  Which of the two state machines, Mealy or Moore, should we use?  Since we need 9 outputs for the state machine, 9 flip-flops are used up. Can we fit the keypad state machine on a single GAL chip?

Spring GAL22V10 Ref: Digital Design Principles & practices, John Wakerly  Max 22 inputs  Max 10 outputs  8-16 Product terms 8 Product terms for this macrocell

Spring Ref: Digital Design Principles & practices, John Wakerly State-machine structure (Mealy)  Do we need to add debouncing circuits?  Or, should we use a pipelined version of Mealy? Output can change asynchronously with the change of input.

Spring Ref: Digital Design Principles & practices, John Wakerly State-machine structure (Moore)  Do we need keypad debouncing circuits?  How many flip-flops do we need?

Spring V K Key press detect Fitting the State Machine on a GAL chip

Spring State Output key code, Ready A Moore State machine One input is 0 State /0 State /0 State /0 State /0 Key detect /0 One input is Key detect /0 Key detect /0 Key detect /0 Resolved 1 code/ Resolved 2 code/1 Resolved 3 code/1 Resolved 4 code/ Input Key detect /0 One input is 0 Key detect /0 12 States? 4 or more Flipflops? Scan Key press Detect Valid Output

Spring V State 1? State 2? 4.7 K State 3? State 4? Key press detect Fitting the State Machine on a GAL chip We use part of the state variables as outputs of the state machine to be used for column scan

Spring Input/key code, Ready One input is 0/1111, 0 Key detect State 1 Key detect State 2 Key detect State 3 Key detect State 4 One input is 0/1111, /1111, 0 A Mealy State machine 1111/1111, 0 One input is 0/code, 1 State /0 State /0 State /0 State / – –

Spring How to choose the proper clock frequency  The clock frequency should be slow enough so that period is comparable to or larger than the keypad bouncing times.  The clock frequency should be fast enough so that it will be able to detect the key press even if it is released very quickly