Lab #11: Register Files

Similar documents
Lab #11: Register Files

Lab #12: 4-Bit Arithmetic Logic Unit (ALU)

Ryerson University Department of Electrical and Computer Engineering COE/BME 328 Digital Systems

Table of Contents Introduction

Laboratory 8. Digital Circuits - Counter and LED Display

Lab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts)

LAB #6 State Machine, Decoder, Buffer/Driver and Seven Segment Display

CPE 200L LABORATORY 3: SEQUENTIAL LOGIC CIRCUITS UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND: SR FLIP-FLOP/LATCH

Experiment (6) 2- to 4 Decoder. Figure 8.1 Block Diagram of 2-to-4 Decoder 0 X X

PHYSICS 5620 LAB 9 Basic Digital Circuits and Flip-Flops

YEDITEPE UNIVERSITY DEPARTMENT OF COMPUTER ENGINEERING. EXPERIMENT VIII: FLIP-FLOPS, COUNTERS 2014 Fall

Digital Logic. ECE 206, Fall 2001: Lab 1. Learning Objectives. The Logic Simulator

Lab 13: FPGA Circuit Realization Ian Callahan

Laboratory Exercise 3

Laboratory 11. Required Components: Objectives. Introduction. Digital Displays and Logic (modified from lab text by Alciatore)

Laboratory Exercise 6

EET 1131 Lab #12 - Page 1 Revised 8/10/2018

PHYS 3322 Modern Laboratory Methods I Digital Devices

NORTHWESTERN UNIVERSITY TECHNOLOGICAL INSTITUTE

STATIC RANDOM-ACCESS MEMORY

ET398 LAB 4. Concurrent Statements, Selection and Process

Tribhuvan University Institute of Science and Technology Bachelor of Science in Computer Science and Information Technology

MODULAR DIGITAL ELECTRONICS TRAINING SYSTEM

Review : 2 Release Date : 2019 Last Amendment : 2013 Course Code : SKEE 2742 Procedure Number : PK-UTM-FKE-(0)-10

CHAPTER 4 RESULTS & DISCUSSION

HDL & High Level Synthesize (EEET 2035) Laboratory II Sequential Circuits with VHDL: DFF, Counter, TFF and Timer

EET 1131 Lab #10 Latches and Flip-Flops

ELEC 204 Digital System Design LABORATORY MANUAL

ECE 2274 Pre-Lab for Experiment Timer Chip

CSCB58 - Lab 4. Prelab /3 Part I (in-lab) /1 Part II (in-lab) /1 Part III (in-lab) /2 TOTAL /8

EXPERIMENT 8 Medium Scale Integration (MSI) Logic Circuits

Lab 2: Hardware/Software Co-design with the Wimp51

Laboratory 4. Figure 1: Serdes Transceiver

University of Victoria. Department of Electrical and Computer Engineering. CENG 290 Digital Design I Lab Manual

Physics 323. Experiment # 10 - Digital Circuits

Lab #10 Hexadecimal-to-Seven-Segment Decoder, 4-bit Adder-Subtractor and Shift Register. Fall 2017

Sequential Digital Design. Laboratory Manual. Experiment #3. Flip Flop Storage Elements

North Shore Community College

Lab #6: Combinational Circuits Design

Experiment # 4 Counters and Logic Analyzer

ECE Lab 5. MSI Circuits - Four-Bit Adder/Subtractor with Decimal Output

Rensselaer Polytechnic Institute Computer Hardware Design ECSE Report. Lab Three Xilinx Richards Controller and Logic Analyzer Laboratory

Lab #13: FPGA Circuit Realization

Digital Circuits I and II Nov. 17, 1999

Digital Fundamentals. Lab 5 Latches & Flip-Flops CETT Name: Date:

Laboratory 1 - Introduction to Digital Electronics and Lab Equipment (Logic Analyzers, Digital Oscilloscope, and FPGA-based Labkit)

Bell. Program of Study. Accelerated Digital Electronics. Dave Bell TJHSST

INTRODUCTION (EE2499_Introduction.doc revised 1/1/18)

Digital 1 Final Project Sequential Digital System - Slot Machine

Lecture 10: Programmable Logic

NEW MEXICO STATE UNIVERSITY Electrical and Computer Engineering Department. EE162 Digital Circuit Design Fall Lab 5: Latches & Flip-Flops

CPSC 121: Models of Computation Lab #5: Flip-Flops and Frequency Division

Electrical and Telecommunications Engineering Technology_TCET3122/TC520. NEW YORK CITY COLLEGE OF TECHNOLOGY The City University of New York

EECS 140 Laboratory Exercise 7 PLD Programming

CSE 352 Laboratory Assignment 3

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science

EMT 125 Digital Electronic Principles I CHAPTER 6 : FLIP-FLOP

Part IA Computer Science Tripos. Hardware Practical Classes

Laboratory 10. Required Components: Objectives. Introduction. Digital Circuits - Logic and Latching (modified from lab text by Alciatore)

Contents Circuits... 1

Light Emitting Diodes and Digital Circuits I

LABORATORY # 1 LAB MANUAL. Digital Signals

Sequential Digital Design. Laboratory Manual. Experiment #7. Counters

Laboratory Exercise 7

Experimental Study to Show the Effect of Bouncing On Digital Systems

EE 210. LOGIC DESIGN LAB.

DIGITAL ELECTRONICS LAB MANUAL FOR 2/4 B.Tech (ECE) COURSE CODE: EC-252

ECE 263 Digital Systems, Fall 2015

COMP2611: Computer Organization Building Sequential Logics with Logisim

Chapter 7 Counters and Registers

EE292: Fundamentals of ECE

CPSC 121: Models of Computation Lab #5: Flip-Flops and Frequency Division

California State University, Bakersfield Computer & Electrical Engineering & Computer Science ECE 3220: Digital Design with VHDL Laboratory 7

Step 1 - shaft decoder to generate clockwise/anticlockwise signals

Elwin Cabrera May 11, 2016 DIGITAL CLOCK. ECE271/CSC222 Final Project Report

Today 3/8/11 Lecture 8 Sequential Logic, Clocks, and Displays

Laboratory 9 Digital Circuits: Flip Flops, One-Shot, Shift Register, Ripple Counter

LAB 3 Verilog for Combinational Circuits

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 03 Issue: 07 July p-issn:

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) LATCHES and FLIP-FLOPS

Part IA Computer Science Tripos. Hardware Practical Classes

Design of a Binary Number Lock (using schematic entry method) 1. Synopsis: 2. Description of the Circuit:

Semester III. Subject Name: Digital Electronics. Subject Code: 09CT0301. Diploma Branches in which this subject is offered: Computer Engineering

Report on 4-bit Counter design Report- 1, 2. Report on D- Flipflop. Course project for ECE533

NAND/NOR Implementation of Logic Functions

Light Emitting Diodes and Digital Circuits I

Experiment: FPGA Design with Verilog (Part 4)

1. Synopsis: 2. Description of the Circuit:

Physics 217A LAB 4 Spring 2016 Shift Registers Tri-State Bus. Part I

Light Emitting Diodes and Digital Circuits I

WINTER 15 EXAMINATION Model Answer

Chapter 3: Sequential Logic Systems

Chapter 5 Flip-Flops and Related Devices

COMPUTER ENGINEERING PROGRAM

Digital Networks and Systems Laboratory 2 Basic Digital Building Blocks Time 4 hours

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) COUNTERS

Field Programmable Gate Arrays (FPGAs)

successive approximation register (SAR) Q digital estimate

Lecture 14: Computer Peripherals

DALHOUSIE UNIVERSITY Department of Electrical & Computer Engineering Digital Circuits - ECED 220. Experiment 4 - Latches and Flip-Flops

Transcription:

Lab #11: Register Files Zack Mattis Lab: 3/21/17 Report: 3/26/17 Partner: Brendan Schuster

Purpose In this lab, 4x4 register was designed and fully implemented onto a protoboard that emulates the local memory of a CPU. These registers provide temporary storage of the data that is about to be processed. This implementation has 4 individual registers that can be addressed using 2 separate counters, one for writing and one for reading, respectively. Each address is capable of storing 4 bits or 1 hexadecimal character. The circuit was implemented using 7 segment displays to observe the data input as well as the stored register values. The design can be seen in Figure 1 below. The operation of the design was verified using the LogicPort Logic Analyzer to observe the signals of the circuit. The design was implemented using one 4x4 register (74LS670), two counters (74LS193), two NAND ICs for de-bounced switches (7400), two 7-segment display drivers/decoders (74LS247), two 7-segment displays, one 8-bit DIP SPST switch, 10 resistors, and 5 LEDS. Figure 1

Procedure The design for the 4x4 register was created using the Altera Quartus 9.1 software and can be seen in Figure 2 (see attached). This design uses a 4x4 register, two counters to provide the addressing for read/write, and two decoders for the seven segment displays that convert the hexadecimal input/output into a visual 7 segment output display. This design was then tested using the using the Quartus simulation tool that allows for user selected data for each of the inputs. By manipulating the clocking signal of the counters, the user can select the which of the 4 registers they wish to read/write to for each respective counter. Additionally, by enabling the write signal to 0 (active low), the data input value (0-15) can be stored within the selected register. The waveform from Quartus can be seen in Figure 3 (see attached). This figure shows the value of 8 being written to register 0, output with all low values for the seven segment displays corresponding to each pin (active lows). Additionally, it shows the value of 1 being written to register 1, corresponding to the decoder output lows of segments b (LED_out[1]) and c (LED_out[2]) for the value of 1. The verified design was then implemented onto the protoboard using the previously mentioned IC chips. The DIP switches were used as the data inputs for the register and the counters were used as the addressing for the read/write registers. Both the data inputs and the outputs from the 4x4 register were wired to sevensegment display decoders and then seven segment displays. These displays allowed for easy viewing of the hexadecimal value that was being provided to or stored within the register. For the design, LEDs were added to the output of each counter to be able to view which register was active. De-bounced switches were used to provide the clocking signal for the counters as well as the write enable signal for the register. The read signal was grounded to ensure that it would always be operational (active low). This protoboard implementation was then analyzed using the LogicPort Logic Analzyer. This device converts the analog signal of the circuit into a digital form of 0s and 1s. This tool enables effective observation of the circuit s inputs and outputs. In our testing, we connected the device to our clock as well as 13 inputs. Inputs D0-D12 were: write_register[1-0], read_register[1-0], data_in[3-0], writeenable_l, data_out[30]. The waveform can be seen in Figure 4 (see attached).

Results The use of a counter combined with a de-bounced switch as the clocking signal allows for effective cycling of the register inputs for read/write from 0-3. Utilization of another switch as the input for the write enable allows for a very simple device to write that data from the input into the register. With the read enable signal as a ground, the 4x4 register will always be reading the selected registers value at any time that a new value is not being written. The seven segment displays are very useful parts that allow for the user to easily see the hexadecimal value from the 4 switches for the data input as well as the hexadecimal values that is stored within the registers. The use of LEDs for the output of the counter allow the user to see which register has been selected. Our circuit design can be seen in Figures 5 and 6 below. In Figure 5, you can see that register 2 has been selected for both the read and write counters from the LEDs in the top left corner. Also, the value of 1 is stored in the register while 8 is being provided as the data input. In Figure 6, you can see the write enable switch being selected, going to a low value with the LED off (active low), and writing the data input value of 8 into the selected register. Figure 5

Figure 6 Conclusion The design implementation of the 4x4 register from Figure 2 proved to be a successful design. This protoboard circuit can effectively act as a local storage device for things such as a CPU, using registers to store temporary values. The LogicPort Logic Analyzer output waveform from Figure 4 shows the user correctly utilizing the

register to store hexadecimal values. At time t~= -5s, the hex value of 7 is written to register 2 (out[0-2]) once the write enable is set to low. Additionally, at t~=2s, the hex value of 8 is written into register 0, as you can see from the out_3 waveform. Utilization of the Logic Analyzer to convert the analog inputs/outputs to a digital 0/1 configuration allows the user to test and verify the output of the circuit to ensure that it is functioning properly. The 4x4 register design and implementation was a practical application to understanding how the CPU of a computer utilizes its local memory to write and read values. References 1. ECE 0501 Digital Systems Laboratory Custom Course Materials. Laboratory Notebook. University of Pittsburgh.