EASTERN MEDITERRANEAN UNIVERSITY COMPUTER ENGINEERING DEPARTMENT CMPE224 DIGITAL LOGIC SYSTEMS VHDL EXPERIMENT VII

Similar documents
UNIVERSITI MALAYSIA PERLIS

Ring Counter. 4-bit Ring Counter using D FlipFlop. VHDL Code for 4-bit Ring Counter and Johnson Counter 1. Contents

Types of Control. Programmed Non-programmed. Program Counter Hardwired

Digital Circuits II Lecture 6. Lab Demonstration 3 Using Altera Quartus II to Determine Simplified Equations & Entering Truth Table into VHDL

DIGITAL LOGIC WITH VHDL (Fall 2013) Unit 5

CSE 260 Digital Computers: Organization and Logical Design. Midterm Solutions

Written exam IE1204/5 Digital Design Friday 13/

Arria V Timing Optimization Guidelines

Four-Way Traffic Light Controller Designing with VHDL

Synthesis Minimizations and Mesh Algorithm Selection: An Extension of the Ultrasonic 3D Camera

CHAPTER FIVE - Flip-Flops and Related Devices

Topics. FPGA Design EECE 277. Combinational Logic Blocks. From Last Time. Multiplication. Dr. William H. Robinson February 25, 2005

CS/EE Homework 9 Solutions

Daisy II. By: Steve Rothen EEL5666 Spring 2002

A-PDF Split DEMO : Purchase from to remove the watermark 114 FSM

EXPERIMENT 1: INTRODUCTION TO THE NEXYS 2. ELEC 3004/7312: Signals Systems & Controls EXPERIMENT 1: INTRODUCTION TO THE NEXYS 2

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-378:

DELD MODEL ANSWER DEC 2018

Introduction to Digital Signal Processing

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

ELECTRICAL AND COMPUTER ENGINEERING DEPARTMENT, OAKLAND UNIVERSITY ECE-2700:

Configuring CorePWM Using RTL Blocks

PE713 FPGA Based System Design

Senior Capstone Project Proposal Reconfigurable FPGA Implementation Of Digital Communication System

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY (AUTONOMOUS)

Hardware Design with VHDL Design Example: UART ECE 443

Lab 1.1 PWM Hardware Design

Midterm Exam ECE 448 Spring Thursday Section. (15 points)

IMPROVEMENT OF THE ORTHOGONAL CODE CONVOLUTION CAPABILITIES USING FPGA IMPLEMENTATION

Stage report Spark Generator Board & Path Finder Robot

FPGA & Pulse Width Modulation. Digital Logic. Programing the FPGA 7/23/2015. Time Allotment During the First 14 Weeks of Our Advanced Lab Course

Generation of Digital System Test Patterns Based on VHDL Simulations

Microelectromechanical System (MEMS) Switch Test

CSE 260 Digital Computers: Organization and Logical Design. Lab 4. Jon Turner Due 3/27/2012

Bluetooth Transceiver Design with VHDL-AMS

Efficient Parallel Real-Time Upsampling with Xilinx FPGAs

A Power-Efficient Design Approach to Radiation Hardened Digital Circuitry using Dynamically Selectable Triple Modulo Redundancy

MODULE-4 Memory and programmable logic

Code No: R Set No. 1

E2 Framing / Deframing according ITU-T G.703 / G.742 : VHDL-Modules

DIGITAL DESIGN WITH SM CHARTS

HDL CODE TO REALIZE ALL THE LOGIC GATES

First Name: Last Name: Lab Cover Page. Teaching Assistant to whom you are submitting

ISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 4, Issue 11, May 2015

Development of FPGA Based System for Neutron Flux Monitoring in Fast Breeder Reactors

Implementing Multipliers with Actel FPGAs

Logic 0 Logic To provide an output load (or two) 5 Voltage Measurement Point V CC +5 74LS00 GND

Clocking Schedule and Writing VHDL Programs for Synthesis

A BIST Circuit for Fault Detection Using Recursive Pseudo- Exhaustive Two Pattern Generator

DO NOT COPY DO NOT COPY

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 2 nd year engineering students

6.111 Lecture # 19. Controlling Position. Some General Features of Servos: Servomechanisms are of this form:

Embedded Systems 10 BF - ES - 1 -

Chapter 4 Combinational Logic Circuits

TOUCH SCREEN BASED SPEED CONTROL OF SINGLE PHASE INDUCTION MOTOR

Field Programmable Gate Array Implementation and Testing of a Minimum-phase Finite Impulse Response Filter

Lab #10: Finite State Machine Design

Doing DSP Workshop Summer Lab Exercise 2. 1 Overview PMod modules The S3SB to C5510 connection... 4

The Frequency Divider component produces an output that is the clock input divided by the specified value.

TRANSPOSED FORM OF FOLDED FIR FILTER

REALIZATION OF FPGA BASED Q-FORMAT ARITHMETIC LOGIC UNIT FOR POWER ELECTRONIC CONVERTER APPLICATIONS

EE 307 Project #1 Whac-A-Mole

Low Power Design Part I Introduction and VHDL design. Ricardo Santos LSCAD/FACOM/UFMS

Digital Fundamentals 8/29/2016. Summary. Summary. Floyd. Chapter 3 A X. The Inverter

ICS 151 Final. (Last Name) (First Name)

Solutions. ICS 151 Final. Q1 Q2 Q3 Q4 Total Credit Score. Instructions: Student ID. (Last Name) (First Name) Signature

STUDY OF RECONFIGURABLE MOSTLY DIGITAL RADIO FOR MANET

Punching Bag Trainer. A Senior Project. presented to. the Faculty of the Electrical Engineering Department

VHDL IMPLEMENTATION OF CDMA SYSTEM

High Speed Binary Counters Based on Wallace Tree Multiplier in VHDL

Design Methodologies. Design Trade-offs. System Design to Hardware. Design Gap. Speed (throughput and clock frequency) Area and

bus waveforms transport delta and simulation

FPGA Implementation of a Digital Tachometer with Input Filtering

CHAPTER 5 NOVEL CARRIER FUNCTION FOR FUNDAMENTAL FORTIFICATION IN VSI

Digital Fundamentals 9/4/2017. Summary. Summary. Floyd. Chapter 3. The Inverter

Chapter 4 Combinational Logic Circuits

On Built-In Self-Test for Adders

[VLSI & EMBEDDED SYSTEMS LAB]

M.A. College of Engineering 352-(&75(3257 6LPXODWLRQ DQG 6\QWKH. Prof. K.Radhakrishnan Ray Ranjan Varghese. 'HSDUWPHQW RI (OHFWULFDO á (OHFWURQLFV

Digital Fundamentals

SIR C.R.REDDY COLLEGE OF ENGINEERING ELURU Department of Electronics and Communications

Learning Outcomes. Spiral 2 3. DeMorgan Equivalents NEGATIVE (ACTIVE LO) LOGIC. Negative Logic One hot State Assignment System Design Examples

FM Radio Receiver with Digital Demodulation

Low power implementation of Trivium stream cipher

Digital Fundamentals A Systems Approach Thomas L. Floyd First Edition

Advanced Digital Logic Design

IMPLEMENTATION OF DIGITAL FILTER ON FPGA FOR ECG SIGNAL PROCESSING

Java Bread Board Introductory Digital Electronics Exercise 2, Page 1

STRS COMPLIANT FPGA WAVEFORM DEVELOPMENT

Supporting VHDL Design for Air-Conditioning Controller Using Evolutionary Computation

EE382V-ICS: System-on-a-Chip (SoC) Design

FPGA SIMULATION OF PULSE IONIZING SENSORS AND ANALYSES OF DESCREET - FLOATING ALGORITHM

Introduction. BME208 Logic Circuits Yalçın İŞLER

ME 365 EXPERIMENT 8 FREQUENCY ANALYSIS

Recursive Pseudo-Exhaustive Two-Pattern Generator PRIYANSHU PANDEY 1, VINOD KAPSE 2 1 M.TECH IV SEM, HOD 2

FPGA-Based Digital Filters Using Bit-Serial Arithmetic

Design of Multiplier Less 32 Tap FIR Filter using VHDL

Performance assessment of Hamming Code

Design and FPGA Implementation of 4x4 Vedic Multiplier using Different Architectures

Transcription:

EASTERN MEDITERRANEAN UNIVERSITY COMPUTER ENGINEERING DEPARTMENT CMPE224 DIGITAL LOGIC SYSTEMS VHDL EXPERIMENT VII TITLE: VHDL IMPLEMENTATION OF ALGORITHMIC STATE MACHINES OBJECTIVES: VHDL implementation of digital systems described using ASM charts will be studied. The students are expected to learn the implementation issues of ASM charts. Below, you will find detailed examples on the implementation of different ASM charts and associated digital systems in VHDL. Examine these VHDL codes and implement them in Quartus II environment to understand the underlying ideas better. Example : Bit-Counting Circuit. Pseudo-code of counting the number of s within the contents of a register A and storing the count in counter B is as follows: B=; while A do if a = then B=B+; Right-shift A; end while; ASM chart for this pseudo-code is given below: The state box for the starting state S specifies that B is initialized to. There is an input signal s used to indicate when the data to be processed has been loaded into A, so that the machine can start. When s becomes one the machine changes to state S2.The decision box below state S2 checks whether A=. If so, the bit counting operation is complete and the machine should change to state S3. If not, the ASM remains in S2. In state S3, counter B contains the result which is the number of s in A. An output signal Done is set to to indicate that the algorithm is finished. The FSM stays in S3 until s goes back to.

Reset S Load B s s S2 S Shift right A Done B B + A =? a ASM chart for the bit-counting circuit. Data-path circuit The datapath circuit for the bit-counting system described above consists of an n-bit shift register and a log 2 n -bit up-counter.

Data n log 2 n LA EA Clock w L E Shift A LB EB L E Counter log 2 n n z a B Datapath circuit for ASM of bit-counting system. In the above datapath circuit LA and EA represents the Load A and Enable A signals. The parallel input to register A is named Data, and its parallel aoutput is A. An n-input NOR gate is used to test whether A=. The output of this gate is when A=; i.e., z= when A=. The counter has a log 2 n bits, with parallel inputs connected to. The counter has a parallel load input LB and an enable input EB. Control Circuit The ASM needed for the control circuit is given below. This ASM illustrates how the inputs LA, s, a, and z are processed and how the outputs EA, LB, EB, and Done are generated. the control circuit of the bit- The VHDL code implementing the datapath and counting system is also presented below.

Reset S EA LB EB LA s s S2 S3 EA Done EB z a ASM needed for the control circuit of bit-counting system VHDL Code for the BIT COUNTING example

Date: May 9, 23 ExpVII.vhd Project: ExpVII LIBRARY ieee; USE ieee.std_logic_64.all; USE ieee.std_logic_unsigned.all ; ENTITY ExpVII IS PORT( Clock : IN STD_LOGIC; Load_A,s : IN STD_LOGIC; InputStream : IN STD_LOGIC_VECTOR (7 DOWNTO ); B : OUT STD_LOGIC_VECTOR (3 DOWNTO ); Done : OUT STD_LOGIC); END ExpVII; ARCHITECTURE Behavior OF ExpVII IS SIGNAL STATE : STD_LOGIC_VECTOR ( DOWNTO ); SIGNAL A : STD_LOGIC_VECTOR (7 DOWNTO ); SIGNAL BB : STD_LOGIC_VECTOR (3 DOWNTO ); SIGNAL z, EA, EB : STD_LOGIC; State_Transitions: PROCESS (Clock) IF (Clock'EVENT AND Clock='') THEN if STATE = "" then if s = '' then STATE <= ""; else STATE <= ""; elsif STATE = "" then if z = '' then STATE <= ""; else STATE <= ""; elsif STATE = "" then if s = '' then STATE <= ""; else STATE <= ""; END PROCESS; Control_Outputs: PROCESS (STATE,s,A()) Done<=''; IF STATE="" THEN EA<=''; EB<=''; ELSIF STATE="" THEN EA<=''; IF A()='' THEN EB<=''; ELSE Revised by ShAhin MPA Page of 2 Revision: ExpVII

Date: May 9, 23 ExpVII.vhd Project: ExpVII EB<=''; ELSIF STATE="" THEN EA <= ''; EB <= ''; Done<=''; END PROCESS; Datapath: PROCESS (Clock) IF (Clock'EVENT AND Clock='') THEN IF STATE="" THEN BB<=""; ELSE if EB = '' then BB<=BB+; END PROCESS; ShiftA: PROCESS(Clock,InputStream,Load_A,s,Clock) IF (Clock'EVENT AND Clock='') THEN IF (Load_A='') THEN A<=InputStream; ELSE IF EA='' THEN A<=''&A(7 DOWNTO ); IF A="" THEN z<=''; ELSE z<=''; END PROCESS; B<=BB; END Behavior; Revised by ShAhin MPA Page 2 of 2 Revision: ExpVII

PRELIMINARY WORK:. Write down the VHDL code for the bit-counting circuit described above. Perform all experimental steps including VHDL coding, waveform preparation, and simulations; make them ready before you come to the laboratory. 2. Make slight modifications in the above VHDL code to count the number of s in A. Perform all experimental steps for this implementation also. EXPERIMENTAL WORK: Demonstrate your preliminary work to the laboratory assistants using Quartus II environment. Be ready for detailed questions on your work. Good Luck. Dr. Adnan Acan Dr. Evgueni Doukhnitch Dr. Muhammed Salamah.