DESIGN PROJECT TOY RPN CALCULATOR

Size: px
Start display at page:

Download "DESIGN PROJECT TOY RPN CALCULATOR"

Transcription

1 April 8, 1998 DESIGN PROJECT TOY RPN CALCULATOR ECE/Comp Sci 352 Digital System Fundamentals Semester II Due Tuesday, April 28, 1998; 10% of course grade. This project is to be submitted and will be graded. It is to be performed by teams of two students to permit a more significant project and foster collaboration on difficult parts and in Mentor Graphics usage. The team is not to copy designs or results from others. However, sharing knowledge and tips on how to use Mentor Graphics with other teams is allowed and encouraged. As a part of the project report, a table is to be included that reports in detail what parts of the project were performed by each team member; the table to be completed and submitted is included at the end of this write-up. Ordinarily the same grade will be given to each team member, but if there is a significant imbalance in overall contribution, individual grades will be given. This project write-up is organized as follows. Initially, we will give specifications for the Toy RPN Calculator. The specifications will be followed by a number of design exercises that will lead you through the design and CAD tool usage. You are strongly encourage to study this entire write-up before beginning. SPECIFICATIONS EXTERNAL SPECIFICATIONS RPN stands for Reverse Polish Notation otherwise referred to as Postfix notation. EXERCISE: Surf the Web to find out how what RPN is, why the name, and how an RPN calculator works. A good starting point Enter: Reverse Polish Notation into the search engine at and then select: as a phrase. 1

2 SPECIFICATIONS Power/Reset 0 ENTER 1 DROP + The Toy RPN Calculator is shown above. In addition to the Power/Reset button, the calculator has two digit buttons, 0 and 1, for entering binary digits, and five operation buttons, ENTER, DROP,, +, and. There is a 4-digit binary LCD display for displaying intermediate values and results. Instead of the memories used for storage of temporary results and operands in a typical calculator, the RPN calculator uses a Last-In, First-Out (LIFO) queue also called a down stack. This stack operates like a plate stack in a cafeteria. When you add a plate to the stack, the plates currently in the stack move downward so that the Top Of Stack (TOS) is always the same location. When you remove a plate from the stack, the plates remaining move upward so that the TOS is in the same position. The same principle applies to the down stack in the calculator. All entries into the stack of operands, temporary values and results occur on the TOS. All removal of operands, temporary values and results also occur on the TOS. When an entry is made on the stack, the contents in the stack is ed downward by one location. This entry and the downward movement of the stack content is called a PUSH operation. When an entry is removed from the stack, the contents in the stack is moved upward by one location. This removal and upward movement of the stack content is called a POP operation. The operation buttons have the following functions: ENTER PUSH operation in which up to four binary digits entered least significant digit first using the 0 and 1 buttons become the TOS entry. DROP POP operation in which the value in the TOS is discarded. POP the value in TOS and multiply it times the new value in TOS; replace the new value in TOS with the product. + POP the value in TOS and add it to the new value in TOS; replace the new value in TOS with the sum. POP the value in TOS and subtract it from the new value in TOS; replace the new value in TOS with the difference. 2 DESIGN PROJECT TOY RPN CALCULATOR

3 SPECIFICATIONS Suppose we wish to perform the following calculation given in normal notation: (1 + 11) (100 10) The simplest string of operations to do this in the toy RPN calculator is: 1, ENTER, 11, ENTER, +, 100, ENTER, 10, ENTER,, The end result displayed on the display after the is entered. (Note that alternative strings in RPN in which +,, and are performed on TOS and the keyed in data as well, such as 1, ENTER, 11, +, 100, ENTER, 10,,, are not permitted in the toy RPN calculator!) As a design simplification, no inputs, temporary operands, or results are permitted to be negative. In other words, all numbers are unsigned. Care must be taken not to subtract a larger number from a smaller one. INTERNAL SPECIFICATION The top level of the design of the Toy RPN Calculator appears below. Power/ Reset 0 1 ENTER DROP + inp(3:0) I/0 Logic and Circuitry CORE LOGIC CK Reset entr drop mul add sub CONTROL sel31(1:0) en ent ens done DATAPATH dis(3:0) Display You are to design the CORE LOGIC. The I/O Logic and Circuitry is specified functionally as follows and is not to be designed. This description of the interface to the outside world will permit you to understand the environment for the CORE LOGIC. DESIGN PROJECT TOY RPN CALCULATOR 3

4 SPECIFICATIONS The external buttons and the display connect to the I/O Logic and Circuitry which does the following: 1) Provides a clock signal, CK. 2) Provides a master reset signal, Reset, that is activated when the power is turned on. 3) Debounces and otherwise conditions signals from the buttons. 4) Enters the 0 and 1 values from the 0 and 1 buttons least significant bit first into a register that provides 4-bit input inp(3:0) to the CORE LOGIC. 5) Takes the 4-bit output dis(3:0) from the CORE LOGIC and provides the display drivers for driving the 4-bit display. 6) Converts any operation button to a signal on the corresponding line (entr, drop, mul, add, and sub) that goes to 1 and remains 1 until the positive clock edge after done becomes 1. The CORE LOGIC is divided into two pieces, the DATAPATH and the CONTROL. You will design the DATAPATH first, followed by the CONTROL. DATAPATH SPECIFICATION A block diagram for the 4-bit wide DATAPATH appears next. inp B sub A B A 4-bit Adder - Subtractor 4-bit Multiplier S PROD I0 I1 I2 sel31 4-bit 31 Multiplexer Y Q 4-bit en Register CLR D CK Reset dis din ent ens TOS CLR CK Reset 9 4 Stack LIFO 4 DESIGN PROJECT TOY RPN CALCULATOR

5 SPECIFICATIONS Note that the DATAPATH contains a number of components, notably, a 4-bit Multiplier, a 4-bit Adder-Subtractor, 4-bit 31 Multiplexer, a 4-bit Register, and a 9 4-bit Stack. Each of these components will be described next and illustrations will be given to show how they are used to perform stack operations. The 4-bit Multiplier has been predesigned and is available in Mentor Graphics genlib as part 4bit_multi. The input is BA(7:0) and the output is PROD(0:7). The input BA(3:0) = A(3:0) and input BA(7:4) = B(3:0). Functionally, the multiplier multiplies B by A with the product appearing on PROD. Since the DATAPATH is only 4-bits wide, you will use only PROD(3:0) and ignore the upper half of the product, PROD(4:7). The 4-bit Adder-Subtractor places the sum of B(3:0) and A(3:0) on S(3:0) for sub = 0 and subtracts B(3:0) from A(3:0) placing the result on S(3:0) for sub = 1. The 4-bit Multiplexer places one of three inputs, I0(3:0), I1(3:0) and I2(3:0) on its output Y(3:0) based on the values of sel31(1:0) as shown by the following table. sel31(1:0) Y(3:0) 0 0 I0(3:0) 0 1 I1(3:0) 1 X I2(3:0) The 4-bit Register has a load enable input en, data inputs D(3:0) and data outputs Q(3:0) This register loads the value from D(3:0) for en = 1 and stores its current value for en = 0. The 9 4-bit Stack is the most complex of the components. It has a 4-bit data input DIN(3:0) and a 4-bit data output TOS(3:0). There are 9 registers in the stack with the top register referred to as TOS. The stack has three active operations controlled by the signals ent, ens and. The active operations are REPLACE, POP and PUSH, as describe by the following table. ent ens Operation Action in Response to Positive Edge on CK 0 0 X HOLD Stack contents is unchanged REPLACE The value in TOS is replaced by the value on din(3:0), i.e. TOS is loaded from din(3:0). The content of the rest of the stack is unchanged POP The contents of the stack moves upward by one location with the contents of TOS discarded PUSH The contents of the stack moves downward by one location with din(3:0) loaded into TOS. CONTROL SPECIFICATION The control is a sequential circuit that uses inputs entr, drop, mul, add, and sub to generate outputs sel31(1:0), en, ent, ens,, and done. Note that at most one of entr, drop, mul, add, and sub can equal 1 at any time. In addition, Reset and CK influence the sequential behavior of the circuit. The Mealy model state diagram shown at the top of the next page has only two states. State 0 is the state entered by using Reset. The DESIGN PROJECT TOY RPN CALCULATOR 5

6 SPECIFICATIONS Reset 0 1 ENTER and DROP operations are performed in state 0 1. Performance of, + and use both state 0 and state 1. For these three operations, in state 0, a POP is applied to the stack, the value from TOS is copied into the 4-bit Register, and the new state becomes 1 is entered. In state 1, the new TOS value and the value in the 4-bit Register are combined by the specified operation, a REPLACE places the result in TOS, and the new state becomes 0, completing the operation. The next state and output behavior of the control can be derived from prior description of its operation and the description of the control inputs and outputs. We illustrate a part of this derivation by two examples. Suppose we wish to do an ENTER operation, i.e., PUSH the value on inp(3:0) onto the stack. The state is initially 0 and input entr = 1. To pass inp(3:0) to the stack, sel31(1:0) = 00. To cause a PUSH to occur on the stack, ent = ens = 1 and = 1. en is not used for this operation, so en = X (don t care). Since the operation will be completed on the next positive clock edge, done = 1 to cause entr to return to 0 and the next state will be 0 so the calculator is ready to perform the next operation. As an additional illustration, suppose we wish to do a + operation, i.e., POP the value in TOS, add it to the new TOS value, and REPLACE the new TOS value with the result. We will use the 4-bit Register to save the initial TOS value temporarily. In state 0 with input add = 1, we do a POP to remove the initial TOS value from the stack and simultaneously load the TOS output from the stack into the 4-bit Register. The control signal values needed for this are ent = ens = en = 1 and = 0. Also, since the operation is not complete, done = 0 and the next state is 1. The remaining control signal is a don t cares, sel31(1:0) = X. In state 1, to add the new TOS value and the value in the 4-bit Register and REPLACE the TOS value with the result, we need to do an add in the 4- bit Adder-Subtractor, select the output of the adder with the 4-bit 31 Multiplexer, and do a REPLACE on the stack. The control signal values required are sel31(1:0) = 01, ent = 1, ens = 0 and = 1. Note that, by definition of the inputs, the signal sub which bypasses the control = 0 as required to do an add. Since the operation is complete, done = 1, and the next state becomes Saying that something is performed is state 0 means that it occurs at the positive clock edge that ends the clock cycle during which state 0 is the state. 6 DESIGN PROJECT TOY RPN CALCULATOR

7 DATAPATH DESIGN The information from the above example can be placed in a table describing the control: Inputs Present Next Outputs entr drop mul add sub State State sel31(1:0) en ent ens done 1 X X X X X X X X 1 X 0 1 X X X X 1 X X Since only one of the inputs can be 1 at any time, the other inputs need not be used to define the input combination, so are shown as X s to simplify the logic. By going through the same process for each of the other operations, we can come up with the table for the entire control. Any combination not represented in the table will have the next state and output as don t cares. This table can be used to derive the equations (including don t cares) for the outputs and the D input to the flip-flop for the control by using cafe. DATAPATH DESIGN Use the specifications above to obtain the data path components and the datapath. If a simulation of any component designed indicates an error, rework the design until it functions correctly. 4-bit Register. The 4-bit register has been predesigned for you. Open a new sheet in da called R4 and enter the schematic given at the end of this writeup as Attachment 1. The name for the D flip-flop used is dff and the name for the 2-to-1 multiplexer feeding each D flip-flop is mux21. Generate a symbol for R4. Validate R4 by applying the force file R4.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: Logic schematic and Quicksim output waveforms. 8-bit Bidirectional Shift Register. The stack uses four 8-bit bidirectional shift registers called SRG8. SRG8 has been predesigned for you. Open a new sheet in da called SRG8 and enter the schematic given at the end of this writeup as Attachment 2. The name for the D flip-flop used is dff and the names for the 2-to-1 multiplexers used are mux21. Generate a symbol for SRG8. Validate SRG8 by applying the force file SRG8.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: Logic schematic and Quicksim output waveforms. DESIGN PROJECT TOY RPN CALCULATOR 7

8 DATAPATH DESIGN Full Adder/Subtractor Design Design a full adder/subtractor bit by generating the truth table and then using cafe to obtain the equations for the full adder/subtractor from the truth table. Name the inputs a, b, cin and sub and the outputs cout and s. See course Web site under Project for sample cafe input file that shows the format to do this. Note that in cafe, all variable names must be single letters! From the connection array, open a new sheet called fas in Mentor Graphics da and enter the full adder/subtractor design based on the equations using components from genlib. Generate a symbol for fas. Validate your design by applying all 16 possible input combinations to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. Submit: cafe equation output including the input truth table, the logic schematic, and the Quicksim force file and output waveforms. 4-bit Adder/Subtractor Open a new sheet in da called AS4 and connect together four fas symbols to form the 4- bit Adder/Subtractor. Name the inputs sub, A(3:0) and B(3:0) and the output S(3:0). Generate a symbol for AS4. Validate your design by applying input combinations that verify that both a 1 and 0 carry passes properly between the four fas modules in your design. Submit: Logic schematic, and Quicksim force file and output waveforms. 4-bit 31 Multiplexer Open a new sheet in da called MUX314 which will be the 4-bit 31 Multiplexer. The data inputs to the mux are I0(3:0), I1(3:0) and I2(3:0) and the 2-bit select input is sel31(1:0). Design and enter the multiplexer by interconnecting eight mux21 parts from genlib. Generate a symbol for MUX314. Validate your design by applying each of the following two sets of vectors to the inputs I0, I1, and I2 combined with sel31(1:0) = 00, 01, and 10 for a total of six input combinations and comparing to correct values. Data Input Set 1 Set 2 I I I Submit: Logic schematic, Quicksim force file and output waveforms. 9 4-bit Stack The stack LIFO will consist of a 4-bit register TOSR for the TOS and four 8-bit shift registers SRG8 for the other eight stack locations. A block diagram of the stack appears at the top of the next page. 8 DESIGN PROJECT TOY RPN CALCULATOR

9 DATAPATH DESIGN ent din(3:0) sin(3:0) TOS(3:0) TOSR CK Reset ens sid sou ens sid sou en sid sou en sid sou en SRG8 SRG8 SRG8 SRG8 CK Reset Note that the shift registers are vertical rather than horizontal to provide a hardware stack. When the stack is ed, the output of the TOSR is transferred into the top bits of the shift registers. When the stack is popped, the top bits of the shift registers are transferred into TOSR. The behavior of the TOSR is described by the following table: ent Action 0 X Register content remains unchanged 1 0 The value on sin(3:0) is loaded into TOSR 1 1 The value on din(3:0) is loaded into TOSR DESIGN PROJECT TOY RPN CALCULATOR 9

10 CONTROL DESIGN The behavior of the SRG8 is described by the following table: ens Action 0 X The contents of SRG8 remains unchanged. 1 0 SRG8 shifts upward by one position. 1 1 SRG8 shifts downward by one position filling the vacant position from input sid. TOSR. Open a new sheet in da called TOSR and use R4 and mux21 s from genlib to design the TOSR. Generate a symbol for TOSR. Validate TOSR by applying force file TOSR.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: Logic schematic and Quicksim output waveforms. STACK INTEGRATION. Open a new sheet in da called LIFO and interconnect TOSR and four SRG8 s as shown earlier to implement LIFO. Generate a symbol for LIFO. Validate LIFO by applying force file LIFO.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: Logic schematic and Quicksim output waveforms. Data Path Integration Open a new sheet in da called DATAPATH and interconnect the components developed thus far to implement DATAPATH. Generate a symbol for DATAPATH. Validate DATAPATH by applying force file DATAPATH.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: Logic schematic, and Quicksim force file and output waveforms. CONTROL DESIGN Control State and Output Table Complete the state and output table begun in the control specification part for all of the operations. Include in the table as well all don t care conditions you can think of. For example, entr will never be 1 when in state 1. Control Equation Generation Use cafe to find the equations for the control from the state and output table. Recall that in cafe, all variable names must be single letters! 10 DESIGN PROJECT TOY RPN CALCULATOR

11 CORE LOGIC INTEGRATION Control Implementation Open a new sheet in da called CONTROL and implement the logic represented by the connection array including the D flip-flop with Reset for state storage as the CON- TROL. Validate CONTROL by applying force file CONTROL.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: The cafe equation output including the input truth table, logic schematic, and Quicksim output waveforms. CORE LOGIC INTEGRATION Open a new sheet in da called RPN and interconnect the DATAPATH and the CON- TROL to implement the Toy RPN Calculator. Validate RPN by applying force file RPN.frc to it using Quicksim and checking the Quicksim output to make sure the outputs are correct. All force files are available on the course Web site in the Project section. Submit: The logic schematic and Quicksim force files and output waveforms. DESIGN PROJECT TOY RPN CALCULATOR 11

12 CORE LOGIC INTEGRATION 12 DESIGN PROJECT TOY RPN CALCULATOR

13 Attachment 1 Attachment 1 DESIGN PROJECT TOY RPN CALCULATOR 13

14 Attachment 2 Attachment 2 14 DESIGN PROJECT TOY RPN CALCULATOR

15 TEAM EFFORT REPORT TEAM EFFORT REPORT Submit: This page as the last page of your project report. Each row of the table containing the task contributions must sum to 100%. Team Member Names: 4-bit Register: Entry % % 4-bit Register: Validation % % 8-bit Bidirectional Shift Register: Entry % % 8-bit Bidir. Shift Register: Validation % % Full Adder/Subtractor: Design/Entry % % Full Adder/Subtractor: Validation % % 4-bit Adder/Subtractor: Design/Entry % % 4-bit Adder/Subtractor: Validation % % 4-bit 31 Multiplexer: Design/Entry % % 4-bit 31 Multiplexer: Validation 9 x 4 Stack: TOSR: Design/Entry % % 9 x 4 Stack:TOSR: Validation % % Stack Integration: Design/Entry % % Stack Integration: Validation % % Data Path Integration: Design/Entry % % Data Path Integration: Validation % % Control State and Output Table % % Control Equation Generation % % Control Implementation: Design/Entry % % Control Implementation: Validation % % Core Logic Integration: Design/Entry % % Core Logic Integration: Validation % % Other: % % Other: % % Comments: DESIGN PROJECT TOY RPN CALCULATOR 15

DESIGN PROJECT 2: BCD CALCULATOR PART 2: Control Design

DESIGN PROJECT 2: BCD CALCULATOR PART 2: Control Design Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE/Comp Sci 352 Digital System Fundamentals - Fall 2002-2003 DESIGN PROJECT 2: BCD CALCULATOR PART 2: Control Design

More information

REGISTER TRANSFER LANGUAGE

REGISTER TRANSFER LANGUAGE REGISTER TRANSFER LANGUAGE The operations executed on the data stored in the registers are called micro operations. Classifications of micro operations Register transfer micro operations Arithmetic micro

More information

Chapter 5 Registers & Counters

Chapter 5 Registers & Counters University of Wisconsin - Madison ECE/Comp Sci 352 Digital Systems Fundamentals Kewal K. Saluja and Yu Hen Hu Spring 2002 Chapter 5 Registers & Counters Originals by: Charles R. Kime Modified for course

More information

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital hardware modules that accomplish a specific information-processing task. Digital systems vary in

More information

IA Digital Electronics - Supervision I

IA Digital Electronics - Supervision I IA Digital Electronics - Supervision I Nandor Licker Due noon two days before the supervision 1 Overview The goal of this exercise is to design an 8-digit calculator capable of adding

More information

UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT

UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT UNIT-III 1 KNREDDY UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT Register Transfer: Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Micro operations Logic

More information

CPU Design John D. Carpinelli, All Rights Reserved 1

CPU Design John D. Carpinelli, All Rights Reserved 1 CPU Design 1997 John D. Carpinelli, All Rights Reserved 1 Outline Register organization ALU design Stacks Instruction formats and types Addressing modes 1997 John D. Carpinelli, All Rights Reserved 2 We

More information

Binary Adders: Half Adders and Full Adders

Binary Adders: Half Adders and Full Adders Binary Adders: Half Adders and Full Adders In this set of slides, we present the two basic types of adders: 1. Half adders, and 2. Full adders. Each type of adder functions to add two binary bits. In order

More information

Lab 7: RPN Calculator

Lab 7: RPN Calculator University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory Lab 7: RPN Calculator The purpose of this lab is: Purpose 1. To get familiar with the use

More information

Chapter 4 Arithmetic Functions

Chapter 4 Arithmetic Functions Logic and Computer Design Fundamentals Chapter 4 Arithmetic Functions Charles Kime & Thomas Kaminski 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Overview Iterative combinational

More information

Digital Circuit Design and Language. Datapath Design. Chang, Ik Joon Kyunghee University

Digital Circuit Design and Language. Datapath Design. Chang, Ik Joon Kyunghee University Digital Circuit Design and Language Datapath Design Chang, Ik Joon Kyunghee University Typical Synchronous Design + Control Section : Finite State Machine + Data Section: Adder, Multiplier, Shift Register

More information

ECE/COMP SCI 352 DIGITAL SYSTEM FUNDAMENTALS. Fall 2001 Due: Beginning of Class On Monday, November 5

ECE/COMP SCI 352 DIGITAL SYSTEM FUNDAMENTALS. Fall 2001 Due: Beginning of Class On Monday, November 5 ECE/COMP SCI 352 DIGITAL SYSTEM FUNDAMENTALS DESIGN PROJECT 1 Fall 2001 Due: Beginning of Class On Monday, November 5 The upcoming Project 2 will be the design of a very inexpensive digital wristwatch.

More information

Elec 326: Digital Logic Design

Elec 326: Digital Logic Design Elec 326: Digital Logic Design Project Requirements Fall 2005 For this project you will design and test a three-digit binary-coded-decimal (BCD) adder capable of adding positive and negative BCD numbers.

More information

EKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit

EKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit EKT 422/4 COMPUTER ARCHITECTURE MINI PROJECT : Design of an Arithmetic Logic Unit Objective Students will design and build a customized Arithmetic Logic Unit (ALU). It will perform 16 different operations

More information

Injntu.com Injntu.com Injntu.com R16

Injntu.com Injntu.com Injntu.com R16 1. a) What are the three methods of obtaining the 2 s complement of a given binary (3M) number? b) What do you mean by K-map? Name it advantages and disadvantages. (3M) c) Distinguish between a half-adder

More information

Microcomputers. Outline. Number Systems and Digital Logic Review

Microcomputers. Outline. Number Systems and Digital Logic Review Microcomputers Number Systems and Digital Logic Review Lecture 1-1 Outline Number systems and formats Common number systems Base Conversion Integer representation Signed integer representation Binary coded

More information

Cpr E 281 FINAL PROJECT ELECTRICAL AND COMPUTER ENGINEERING IOWA STATE UNIVERSITY. FINAL Project. Objectives. Project Selection

Cpr E 281 FINAL PROJECT ELECTRICAL AND COMPUTER ENGINEERING IOWA STATE UNIVERSITY. FINAL Project. Objectives. Project Selection Objectives The main objective of the final project is to teach you how to put together all of the class material that you have learned so far in order to program the Altera DE2 board to carry out an independent

More information

Chapter 3: part 3 Binary Subtraction

Chapter 3: part 3 Binary Subtraction Chapter 3: part 3 Binary Subtraction Iterative combinational circuits Binary adders Half and full adders Ripple carry and carry lookahead adders Binary subtraction Binary adder-subtractors Signed binary

More information

R a) Simplify the logic functions from binary to seven segment display code converter (8M) b) Simplify the following using Tabular method

R a) Simplify the logic functions from binary to seven segment display code converter (8M) b) Simplify the following using Tabular method SET - 1 1. a) Convert the decimal number 250.5 to base 3, base 4 b) Write and prove de-morgan laws c) Implement two input EX-OR gate from 2 to 1 multiplexer (3M) d) Write the demerits of PROM (3M) e) What

More information

6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( )

6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( ) 6. Combinational Circuits George Boole (85 864) Claude Shannon (96 2) Signals and Wires Digital signals Binary (or logical ) values: or, on or off, high or low voltage Wires. Propagate digital signals

More information

structure syntax different levels of abstraction

structure syntax different levels of abstraction This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

CAD4 The ALU Fall 2009 Assignment. Description

CAD4 The ALU Fall 2009 Assignment. Description CAD4 The ALU Fall 2009 Assignment To design a 16-bit ALU which will be used in the datapath of the microprocessor. This ALU must support two s complement arithmetic and the instructions in the baseline

More information

problem maximum score 1 8pts 2 6pts 3 10pts 4 15pts 5 12pts 6 10pts 7 24pts 8 16pts 9 19pts Total 120pts

problem maximum score 1 8pts 2 6pts 3 10pts 4 15pts 5 12pts 6 10pts 7 24pts 8 16pts 9 19pts Total 120pts University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences EECS150 J. Wawrzynek Spring 2010 3/31/09 Name: ID number: Midterm Exam This is a closed-book,

More information

University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences. Spring 2010 May 10, 2010

University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences. Spring 2010 May 10, 2010 University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences EECS150 J. Wawrzynek Spring 2010 May 10, 2010 Final Exam Name: ID number: This is

More information

Digital Fundamentals. Lab 6 2 s Complement / Digital Calculator

Digital Fundamentals. Lab 6 2 s Complement / Digital Calculator Richland College Engineering Technology Rev. 0. Donham Rev. 1 (7/2003) J. Horne Rev. 2 (1/2008) J. radbury Digital Fundamentals CETT 1425 Lab 6 2 s Complement / Digital Calculator Name: Date: Objectives:

More information

ELCT 501: Digital System Design

ELCT 501: Digital System Design ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)

More information

Let s put together a Manual Processor

Let s put together a Manual Processor Lecture 14 Let s put together a Manual Processor Hardware Lecture 14 Slide 1 The processor Inside every computer there is at least one processor which can take an instruction, some operands and produce

More information

Control and Datapath 8

Control and Datapath 8 Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system

More information

EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN

EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN 11-1 EXPERIMENT NUMBER 11 REGISTERED ALU DESIGN Purpose Extend the design of the basic four bit adder to include other arithmetic and logic functions. References Wakerly: Section 5.1 Materials Required

More information

Week 6: Processor Components

Week 6: Processor Components Week 6: Processor Components Microprocessors So far, we ve been about making devices, such such as adders, counters and registers. The ultimate goal is to make a microprocessor, which is a digital device

More information

ELEC 326: Class project

ELEC 326: Class project ELEC 326: Class project Kartik Mohanram 1 Introduction For this project you will design and test a three-digit binary-coded-decimal (BCD) adder capable of adding positive and negative BCD numbers. In the

More information

Digital Design Using Digilent FPGA Boards -- Verilog / Active-HDL Edition

Digital Design Using Digilent FPGA Boards -- Verilog / Active-HDL Edition Digital Design Using Digilent FPGA Boards -- Verilog / Active-HDL Edition Table of Contents 1. Introduction to Digital Logic 1 1.1 Background 1 1.2 Digital Logic 5 1.3 Verilog 8 2. Basic Logic Gates 9

More information

CS 206 Introduction to Computer Science II

CS 206 Introduction to Computer Science II CS 206 Introduction to Computer Science II 07 / 26 / 2016 Instructor: Michael Eckmann Today s Topics Comments/Questions? Stacks and Queues Applications of both Priority Queues Michael Eckmann - Skidmore

More information

SKEE2263 Sistem Digit

SKEE2263 Sistem Digit Term Project Guide SKEE2263 Sistem Digit Table of Contents Objectives... 2 Project Scheduling... 2 Option 1: Serial Multiplier... 3 Option 2 : Serial Divider... 7 Option 3 : GCD Calculator... 11 Option

More information

Register Transfer Language and Microoperations (Part 2)

Register Transfer Language and Microoperations (Part 2) Register Transfer Language and Microoperations (Part 2) Adapted by Dr. Adel Ammar Computer Organization 1 MICROOPERATIONS Computer system microoperations are of four types: Register transfer microoperations

More information

Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1

Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 1. Draw and explain 4 bit binary arithmetic or adder circuit diagram. A binary parallel adder is digital function that produces

More information

Unit II Basic Computer Organization

Unit II Basic Computer Organization 1. Define the term. Internal Organization-The internal organization of a digital system is defined by the sequence of microoperations it performs on data stored in its registers. Program- A program is

More information

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book BUILDING BLOCKS OF A BASIC MICROPROCESSOR Part PowerPoint Format of Lecture 3 of Book Decoder Tri-state device Full adder, full subtractor Arithmetic Logic Unit (ALU) Memories Example showing how to write

More information

11/22/1999 7pm - 9pm. Name: Login Name: Preceptor Name: Precept Number:

11/22/1999 7pm - 9pm. Name: Login Name: Preceptor Name: Precept Number: Login Preceptor Precept Number: Computer Science 126 Second Midterm Exam 11/22/1999 7pm - 9pm This exam has 10 questions. The weight of each question is printed in the table below and next to each question.

More information

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 09 MULTIPLEXERS

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 09 MULTIPLEXERS Name: Instructor: Engr. Date Performed: Marks Obtained: /10 Group Members (ID):. Checked By: Date: Experiment # 09 MULTIPLEXERS OBJECTIVES: To experimentally verify the proper operation of a multiplexer.

More information

REGISTER TRANSFER AND MICROOPERATIONS

REGISTER TRANSFER AND MICROOPERATIONS 1 REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations Logic Microoperations Shift Microoperations Arithmetic Logic Shift

More information

UNIT-II. Part-2: CENTRAL PROCESSING UNIT

UNIT-II. Part-2: CENTRAL PROCESSING UNIT Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:

More information

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN 6.1. Instruction Codes The organization of a digital computer defined by: 1. The set of registers it contains and their function. 2. The set of instructions

More information

Contents. Chapter 9 Datapaths Page 1 of 28

Contents. Chapter 9 Datapaths Page 1 of 28 Chapter 9 Datapaths Page of 2 Contents Contents... 9 Datapaths... 2 9. General Datapath... 3 9.2 Using a General Datapath... 5 9.3 Timing Issues... 7 9.4 A More Complex General Datapath... 9 9.5 VHDL for

More information

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto Recommed Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto DISCLAIMER: The information contained in this document does NOT contain

More information

Lecture Topics. Announcements. Today: Integer Arithmetic (P&H ) Next: continued. Consulting hours. Introduction to Sim. Milestone #1 (due 1/26)

Lecture Topics. Announcements. Today: Integer Arithmetic (P&H ) Next: continued. Consulting hours. Introduction to Sim. Milestone #1 (due 1/26) Lecture Topics Today: Integer Arithmetic (P&H 3.1-3.4) Next: continued 1 Announcements Consulting hours Introduction to Sim Milestone #1 (due 1/26) 2 1 Overview: Integer Operations Internal representation

More information

In this lecture, we will go beyond the basic Verilog syntax and examine how flipflops and other clocked circuits are specified.

In this lecture, we will go beyond the basic Verilog syntax and examine how flipflops and other clocked circuits are specified. 1 In this lecture, we will go beyond the basic Verilog syntax and examine how flipflops and other clocked circuits are specified. I will also introduce the idea of a testbench as part of a design specification.

More information

EE 109L Final Review

EE 109L Final Review EE 09L Final Review Name: Closed Book / Score:. Short Answer (6 pts.) a. Storing temporary values in (memory / registers) is preferred due to the (increased / decreased) access time. b. True / False: A

More information

EECS150: Components and Design Techniques for Digital Systems

EECS150: Components and Design Techniques for Digital Systems EECS150: Components and Design Techniques for Digital Systems University of California Dept. of Electrical Engineering and Computer Sciences Midterm 3 Fall 2004 Last name: First name Student ID: Login:

More information

6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( )

6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( ) 6. Combinational Circuits George Boole (85 864) Claude Shannon (96 2) Digital signals Binary (or logical ) values: or, on or off, high or low voltage Wires. Propagate logical values from place to place.

More information

CHAPTER 4: Register Transfer Language and Microoperations

CHAPTER 4: Register Transfer Language and Microoperations CS 224: Computer Organization S.KHABET CHAPTER 4: Register Transfer Language and Microoperations Outline Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations

More information

Good Evening! Welcome!

Good Evening! Welcome! University of Florida EEL 3701 Fall 2011 Dr Eric M Schwartz Page 1/11 Exam 2 Instructions: Turn off all cell phones, beepers and other noise making devices Show all work on the front of the test papers

More information

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

One and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE One and a half hours Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Fundamentals of Computer Engineering Date: Thursday 21st January 2016 Time: 14:00-15:30 Answer BOTH Questions

More information

Computer Architecture Programming the Basic Computer

Computer Architecture Programming the Basic Computer 4. The Execution of the EXCHANGE Instruction The EXCHANGE routine reads the operand from the effective address and places it in DR. The contents of DR and AC are interchanged in the third microinstruction.

More information

For Example: P: LOAD 5 R0. The command given here is used to load a data 5 to the register R0.

For Example: P: LOAD 5 R0. The command given here is used to load a data 5 to the register R0. Register Transfer Language Computers are the electronic devices which have several sets of digital hardware which are inter connected to exchange data. Digital hardware comprises of VLSI Chips which are

More information

Philadelphia University Student Name: Student Number:

Philadelphia University Student Name: Student Number: Philadelphia University Student Name: Student Number: Faculty of Engineering Serial Number: Final Exam, First Semester: 2018/2019 Dept. of Computer Engineering Course Title: Logic Circuits Date: 03/01/2019

More information

4. Write a sum-of-products representation of the following circuit. Y = (A + B + C) (A + B + C)

4. Write a sum-of-products representation of the following circuit. Y = (A + B + C) (A + B + C) COP 273, Winter 26 Exercises 2 - combinational logic Questions. How many boolean functions can be defined on n input variables? 2. Consider the function: Y = (A B) (A C) B (a) Draw a combinational logic

More information

*Instruction Matters: Purdue Academic Course Transformation. Introduction to Digital System Design. Module 4 Arithmetic and Computer Logic Circuits

*Instruction Matters: Purdue Academic Course Transformation. Introduction to Digital System Design. Module 4 Arithmetic and Computer Logic Circuits Purdue IM:PACT* Fall 2018 Edition *Instruction Matters: Purdue Academic Course Transformation Introduction to Digital System Design Module 4 Arithmetic and Computer Logic Circuits Glossary of Common Terms

More information

FPGA Matrix Multiplier

FPGA Matrix Multiplier FPGA Matrix Multiplier In Hwan Baek Henri Samueli School of Engineering and Applied Science University of California Los Angeles Los Angeles, California Email: chris.inhwan.baek@gmail.com David Boeck Henri

More information

Hardware Description Language VHDL (1) Introduction

Hardware Description Language VHDL (1) Introduction Hardware Description Language VHDL (1) Introduction Digital Radiation Measurement and Spectroscopy NE/RHP 537 Introduction Hardware description language (HDL) Intended to describe circuits textually, for

More information

EE 109L Review. Name: Solutions

EE 109L Review. Name: Solutions EE 9L Review Name: Solutions Closed Book / Score:. Short Answer (6 pts.) a. Storing temporary values in (memory / registers) is preferred due to the (increased / decreased) access time. b. True / False:

More information

Exp#8: Designing a Programmable Sequence Detector

Exp#8: Designing a Programmable Sequence Detector Exp#8: Designing a Programmable Sequence Detector Objectives Learning how to partition a system into data-path and control unit. Integrating Schematics and Verilog code together Overview In this lab you

More information

Abi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University

Abi Farsoni, Department of Nuclear Engineering and Radiation Health Physics, Oregon State University Hardware description language (HDL) Intended to describe circuits textually, for a computer to read Evolved starting in the 1970s and 1980s Popular languages today include: VHDL Defined in 1980s by U.S.

More information

ECE 2030D Computer Engineering Spring problems, 5 pages Exam Two 8 March 2012

ECE 2030D Computer Engineering Spring problems, 5 pages Exam Two 8 March 2012 Instructions: This is a closed book, closed note exam. Calculators are not permitted. If you have a question, raise your hand and I will come to you. Please work the exam in pencil and do not separate

More information

Chapter 6 Combinational-Circuit Building Blocks

Chapter 6 Combinational-Circuit Building Blocks Chapter 6 Combinational-Circuit Building Blocks Commonly used combinational building blocks in design of large circuits: Multiplexers Decoders Encoders Comparators Arithmetic circuits Multiplexers A multiplexer

More information

Logic design Ibn Al Haitham collage /Computer science Eng. Sameer

Logic design Ibn Al Haitham collage /Computer science Eng. Sameer DEMORGAN'S THEOREMS One of DeMorgan's theorems stated as follows: The complement of a product of variables is equal to the sum of the complements of the variables. DeMorgan's second theorem is stated as

More information

STRUCTURE OF DESKTOP COMPUTERS

STRUCTURE OF DESKTOP COMPUTERS Page no: 1 UNIT 1 STRUCTURE OF DESKTOP COMPUTERS The desktop computers are the computers which are usually found on a home or office desk. They consist of processing unit, storage unit, visual display

More information

Verilog 1 - Fundamentals

Verilog 1 - Fundamentals Verilog 1 - Fundamentals FA FA FA FA module adder( input [3:0] A, B, output cout, output [3:0] S ); wire c0, c1, c2; FA fa0( A[0], B[0], 1 b0, c0, S[0] ); FA fa1( A[1], B[1], c0, c1, S[1] ); FA fa2( A[2],

More information

Lecture 6: Signed Numbers & Arithmetic Circuits. BCD (Binary Coded Decimal) Points Addressed in this Lecture

Lecture 6: Signed Numbers & Arithmetic Circuits. BCD (Binary Coded Decimal) Points Addressed in this Lecture Points ddressed in this Lecture Lecture 6: Signed Numbers rithmetic Circuits Professor Peter Cheung Department of EEE, Imperial College London (Floyd 2.5-2.7, 6.1-6.7) (Tocci 6.1-6.11, 9.1-9.2, 9.4) Representing

More information

Lab 7 1 Due Thu., 6 Apr. 2017

Lab 7 1 Due Thu., 6 Apr. 2017 Lab 7 1 Due Thu., 6 Apr. 2017 CMPSC 112 Introduction to Computer Science II (Spring 2017) Prof. John Wenskovitch http://cs.allegheny.edu/~jwenskovitch/teaching/cmpsc112 Lab 7 - Using Stacks to Create a

More information

Arithmetic Circuits. Nurul Hazlina Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit

Arithmetic Circuits. Nurul Hazlina Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit Nurul Hazlina 1 1. Adder 2. Multiplier 3. Arithmetic Logic Unit (ALU) 4. HDL for Arithmetic Circuit Nurul Hazlina 2 Introduction 1. Digital circuits are frequently used for arithmetic operations 2. Fundamental

More information

Combinational and sequential circuits (learned in Chapters 1 and 2) can be used to create simple digital systems.

Combinational and sequential circuits (learned in Chapters 1 and 2) can be used to create simple digital systems. REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations Logic Microoperations Shift Microoperations Arithmetic Logic Shift

More information

Experiment 7 Arithmetic Circuits Design and Implementation

Experiment 7 Arithmetic Circuits Design and Implementation Experiment 7 Arithmetic Circuits Design and Implementation Introduction: Addition is just what you would expect in computers. Digits are added bit by bit from right to left, with carries passed to the

More information

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013)

4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) 1 4DM4 Lab. #1 A: Introduction to VHDL and FPGAs B: An Unbuffered Crossbar Switch (posted Thursday, Sept 19, 2013) Lab #1: ITB Room 157, Thurs. and Fridays, 2:30-5:20, EOW Demos to TA: Thurs, Fri, Sept.

More information

ECE 341 Midterm Exam

ECE 341 Midterm Exam ECE 341 Midterm Exam Time allowed: 90 minutes Total Points: 75 Points Scored: Name: Problem No. 1 (10 points) For each of the following statements, indicate whether the statement is TRUE or FALSE: (a)

More information

Number Systems. Readings: , Problem: Implement simple pocket calculator Need: Display, adders & subtractors, inputs

Number Systems. Readings: , Problem: Implement simple pocket calculator Need: Display, adders & subtractors, inputs Number Systems Readings: 3-3.3.3, 3.3.5 Problem: Implement simple pocket calculator Need: Display, adders & subtractors, inputs Display: Seven segment displays Inputs: Switches Missing: Way to implement

More information

The Need of Datapath or Register Transfer Logic. Number 1 Number 2 Number 3 Number 4. Numbers from 1 to million. Register

The Need of Datapath or Register Transfer Logic. Number 1 Number 2 Number 3 Number 4. Numbers from 1 to million. Register The Need of Datapath or Register Transfer Logic Number 1 Number 2 Number 3 Number 4 Numbers from 1 to million Register (a) (b) Circuits to add several numbers: (a) combinational circuit to add four numbers;

More information

Chapter 4. Combinational Logic

Chapter 4. Combinational Logic Chapter 4. Combinational Logic Tong In Oh 1 4.1 Introduction Combinational logic: Logic gates Output determined from only the present combination of inputs Specified by a set of Boolean functions Sequential

More information

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks 2 Wawrzynek, Garcia 2004 c UCB UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks 1 Introduction Original document by J. Wawrzynek (2003-11-15) Revised by Chris Sears

More information

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks

UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks UC Berkeley College of Engineering, EECS Department CS61C: Combinational Logic Blocks Original document by J. Wawrzynek (2003-11-15) Revised by Chris Sears and Dan Garcia (2004-04-26) 1 Introduction Last

More information

EGCP 1010 Digital Logic Design (DLD) Laboratory #6

EGCP 1010 Digital Logic Design (DLD) Laboratory #6 EGCP 11 Digital Logic Design (DLD) Laboratory #6 Four by Four (4 x 4) Sorting Stack Prepared By: Alex Laird on October 1st, 2 Lab Partner: Ryan Morehart Objective: The goal of this laboratory is to expose

More information

session 7. Datapath Design

session 7. Datapath Design General Objective: Determine the hardware requirement of a digital computer based on its instruction set. Specific Objectives: Describe the general concepts in designing the data path of a digital computer

More information

Digital Logic Design Exercises. Assignment 1

Digital Logic Design Exercises. Assignment 1 Assignment 1 For Exercises 1-5, match the following numbers with their definition A Number Natural number C Integer number D Negative number E Rational number 1 A unit of an abstract mathematical system

More information

CDA 3103 Computer Organization Homework #7 Solution Set

CDA 3103 Computer Organization Homework #7 Solution Set CDA 3103 Computer Organization Homework #7 Solution Set 1 Problems 1. Write a MARIE assembly program for the following algorithm where the subroutine takes two numbers and returns their product. Your assembly

More information

XYZ. Register File. right/left. shifter. add/sub +/- en shift en +/-

XYZ. Register File. right/left. shifter. add/sub +/- en shift en +/- Microcode The datapath below incorporates an adder/subtractor and a one bit shifter. The arithmetic operation is specied by the add=sub control line. The subtraction is X -Y.The shift direction is controlled

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

Final Examination (Open Katz, asynchronous & test notes only, Calculators OK, 3 hours)

Final Examination (Open Katz, asynchronous & test notes only, Calculators OK, 3 hours) Your Name: UNIVERSITY OF CALIFORNIA AT BERKELEY BERKELEY DAVIS IRVINE LOS ANGELES RIVERSIDE SAN DIEGO SAN FRANCISCO Department of Electrical Engineering and Computer Sciences SANTA BARBARA SANTA CRUZ CS

More information

1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM

1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM 1. NUMBER SYSTEMS USED IN COMPUTING: THE BINARY NUMBER SYSTEM 1.1 Introduction Given that digital logic and memory devices are based on two electrical states (on and off), it is natural to use a number

More information

hp calculators HP 17bII+ Registers / Memory Banks The Stack Registers The Storage Registers

hp calculators HP 17bII+ Registers / Memory Banks The Stack Registers The Storage Registers The Stack Registers The Storage Registers A register is a place where you store information. It is a memory bank where you put information in order to calculate a number or where you want to keep a number

More information

DIGITAL ARITHMETIC: OPERATIONS AND CIRCUITS

DIGITAL ARITHMETIC: OPERATIONS AND CIRCUITS C H A P T E R 6 DIGITAL ARITHMETIC: OPERATIONS AND CIRCUITS OUTLINE 6- Binary Addition 6-2 Representing Signed Numbers 6-3 Addition in the 2 s- Complement System 6-4 Subtraction in the 2 s- Complement

More information

Federal Urdu University of Arts, Science and Technology, Islamabad VLSI SYSTEM DESIGN. Prepared By: Engr. Yousaf Hameed.

Federal Urdu University of Arts, Science and Technology, Islamabad VLSI SYSTEM DESIGN. Prepared By: Engr. Yousaf Hameed. VLSI SYSTEM DESIGN Prepared By: Engr. Yousaf Hameed Lab Engineer BASIC ELECTRICAL & DIGITAL SYSTEMS LAB DEPARTMENT OF ELECTRICAL ENGINEERING VLSI System Design 1 LAB 01 Schematic Introduction to DSCH and

More information

Design of Embedded DSP Processors

Design of Embedded DSP Processors Design of Embedded DSP Processors Unit 3: Microarchitecture, Register file, and ALU 9/11/2017 Unit 3 of TSEA26-2017 H1 1 Contents 1. Microarchitecture and its design 2. Hardware design fundamentals 3.

More information

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering Final Examination ECE 241F - Digital Systems Examiners: S. Brown,

More information

Question Total Possible Test Score Total 100

Question Total Possible Test Score Total 100 Computer Engineering 2210 Final Name 11 problems, 100 points. Closed books, closed notes, no calculators. You would be wise to read all problems before beginning, note point values and difficulty of problems,

More information

Final Exam Solution Sunday, December 15, 10:05-12:05 PM

Final Exam Solution Sunday, December 15, 10:05-12:05 PM Last (family) name: First (given) name: Student I.D. #: Circle section: Kim Hu Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE/CS 352 Digital System Fundamentals

More information

Parallel logic circuits

Parallel logic circuits Computer Mathematics Week 9 Parallel logic circuits College of Information cience and Engineering Ritsumeikan University last week the mathematics of logic circuits the foundation of all digital design

More information

Topics of this Slideset. CS429: Computer Organization and Architecture. Digital Signals. Truth Tables. Logic Design

Topics of this Slideset. CS429: Computer Organization and Architecture. Digital Signals. Truth Tables. Logic Design Topics of this Slideset CS429: Computer Organization and rchitecture Dr. Bill Young Department of Computer Science University of Texas at ustin Last updated: July 5, 2018 at 11:55 To execute a program

More information

DIGITAL SYSTEM DESIGN

DIGITAL SYSTEM DESIGN DIGITAL SYSTEM DESIGN Prepared By: Engr. Yousaf Hameed Lab Engineer BASIC ELECTRICAL & DIGITAL SYSTEMS LAB DEPARTMENT OF ELECTRICAL ENGINEERING Digital System Design 1 Name: Registration No: Roll No: Semester:

More information

Arithmetic-logic units

Arithmetic-logic units Arithmetic-logic units An arithmetic-logic unit, or ALU, performs many different arithmetic and logic operations. The ALU is the heart of a processor you could say that everything else in the CPU is there

More information