# Method for Multiplier Verication Employing Boolean Equivalence Checking and Arithmetic Bit Level Description

Save this PDF as:

Size: px
Start display at page:

Download "Method for Multiplier Verication Employing Boolean Equivalence Checking and Arithmetic Bit Level Description"

## Transcription

1 Method for Multiplier Verication Employing Boolean ing and Arithmetic Bit Level Description U. Krautz 1, M. Wedler 1, W. Kunz 1 & K. Weber 2, C. Jacobi 2, M. Panz 2 1 University of Kaiserslautern - Germany 2 IBM Forschung und Entwicklungs GmbH - Germany 13th Asia and South Pacic Design Automation Conference, 2008 U.Krautz et al. Multiplier Verication 1

2 Outline 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 2

3 Basic Problem Outline 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 3

4 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

5 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

6 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

7 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

8 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

9 Basic Problem General Arithmetic Circuit Verication formal property checking of signicant importance arithmetic circuits still show stoppers no universal framework for arithmetics, instead special engineered solutions useful for highly regular designs limited in case of full custom logic designs multipliers particular hard to verify hardware multipliers common in processors hard to generate compact canonical representation from bit level for verication often equivalence check against reference (reference and design have to share large structural similarities) U.Krautz et al. Multiplier Verication 4

10 Basic Problem Outline 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 5

11 Basic Problem Previous Work Binary Moment Diagrams (*BMD) [Bryant, Cheng, Hamaguchi] lack of robustness functional decomposition [Chang, Cheng, Fujita, Chen, Aagaard, Seger, Kaivola, Narasimhan] prove internal properties compose global proof of sub-goals manual decomposition non-trivial mapping of lowest proof level to design comparison of reference and design based on 1bit-adder network [Stoel, Wedler] extraction of adder network from design and reference (exponential number of possibilities) equivalence proven by simple calculus U.Krautz et al. Multiplier Verication 6

12 Basic Problem Previous Work Binary Moment Diagrams (*BMD) [Bryant, Cheng, Hamaguchi] lack of robustness functional decomposition [Chang, Cheng, Fujita, Chen, Aagaard, Seger, Kaivola, Narasimhan] prove internal properties compose global proof of sub-goals manual decomposition non-trivial mapping of lowest proof level to design comparison of reference and design based on 1bit-adder network [Stoel, Wedler] extraction of adder network from design and reference (exponential number of possibilities) equivalence proven by simple calculus U.Krautz et al. Multiplier Verication 6

13 Basic Problem Previous Work Binary Moment Diagrams (*BMD) [Bryant, Cheng, Hamaguchi] lack of robustness functional decomposition [Chang, Cheng, Fujita, Chen, Aagaard, Seger, Kaivola, Narasimhan] prove internal properties compose global proof of sub-goals manual decomposition non-trivial mapping of lowest proof level to design comparison of reference and design based on 1bit-adder network [Stoel, Wedler] extraction of adder network from design and reference (exponential number of possibilities) equivalence proven by simple calculus U.Krautz et al. Multiplier Verication 6

14 Outline Motivation 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 7

15 A Simple Multiplier Motivation Algorithm integer multiplication ((a0,...,an) (b0,...,bm) = p) basic multiplication (grade school algorithm): (a0,...,an) 2 0 b0 +(a0,...,an) 2 1 b1. +(a0,...,an) 2 m 1 bm 1 +(a0,...,an) 2 m bm. Structure A B Partial product generation Addition network Product U.Krautz et al. Multiplier Verication 8

16 Full Custom Multipliers custom developed on bit-level various optimizations no half-adder instances (just AND, XOR-gates) full-adders spread across cycles no booth-encoder instances (just shifter, multiplexer) constant bits in adder-tree hot-one/ hot-two representation no word level information available (hard to extract) U.Krautz et al. Multiplier Verication 9

17 Outline Motivation 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 10

18 Arithmetic Reference Description Language utilized in verication specify multiplier on word level: arithmetic by functions structure by interconnection between functions syntax close to HD languages (Verilog / VHDL) used by designer, not verication engineer developed at beginning of design process formalization of typical considerations before implementing a design U.Krautz et al. Multiplier Verication 11

19 Extract - 3Bit Radix2 Multiplier Example variables { a: in (0 to 2); b: in (0 to 2);...} pp_def{ ppb(0) <= gen_pp(a(0 to 2), booth22(0 & 0 & b(0))); ppb(1) <= gen_pp(a(0 to 2), booth22(b( 0 to 2)));...} tree_def{ s1a <= sum32 (ppb(0), ppb(1), ppb(2)); c1a <= carry32 (ppb(0), ppb(1), ppb(2)); sum <= s1a; carry <= c1a...} U.Krautz et al. Multiplier Verication 12

20 Outline Motivation 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 13

21 Approach Motivation Reference () Design (gate netlist) Fix Reference Extract adder network Convert to gate netlist Fix Design Reference (adder network) Reference (gate netlist) no correct arithmetic function? is equivalent? no yes yes Design correct U.Krautz et al. Multiplier Verication 14

22 Outline Motivation 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 15

23 Reference () Design (gate netlist) Fix Reference Extract adder network Convert to gate netlist Fix Design Reference (adder network) Reference (gate netlist) no correct arithmetic function? is equivalent? no yes yes Design correct U.Krautz et al. Multiplier Verication 16

24 to Structure Motivation structural view functional view a = (a0,...,an), b = (b0,...,bm) ppj = a Bj, Bj = 2abj+1 + abj + abj 1 input: of multiplier design (given by designer) prod = m j=0 pp j arithm. functions derived from structure (automatically) Booth encoding adder network U.Krautz et al. Multiplier Verication 17

25 Structure to Bit Arithmetic functional view a = (a0,...,an), b = (b0,...,bm) ppj = a Bj, Bj = 2abj+1 + abj + abj 1 prod = m j=0 pp j arithm. functions derived from structure (automatically) Booth encoding adder network bit arithmetic a0b2 0 a0b1 a1b1 a2b1 a1b0 a0b2 a1b2 a2b2 transformation to basic multiplier denition (automatically) successful/unsuccessful correct/incorrect arithmetic U.Krautz et al. Multiplier Verication 18

26 Example Booth encoded 3bit multiplier initial situation a0b2 2a1b2 2a2b2 0 0 a0b1 a1b1 a2b a0b2 a1b2 a2b a0b0 2a1b0 2a2b0 0 0 a0b0 a1b0 a2b p 1 p0 p1 p2 p3 p4 U.Krautz et al. Multiplier Verication 19

27 Example Booth encoded 3bit multiplier after transformation a0b2 a1b2 a2b a0b1 a1b1 a2b a0b2 2a1b2 2a2b2 0 0 a0b0 a1b0 a2b a0b0 2a1b0 2a2b p 1 p0 p1 p2 p3 p4 U.Krautz et al. Multiplier Verication 20

28 Example Booth encoded 3bit multiplier after summation a0b1 a1b1 a2b a0b2 a1b2 a2b a0b0 a1b0 a2b p 1 p0 p1 p2 p3 p4 U.Krautz et al. Multiplier Verication 21

29 Outline Motivation 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 22

30 - Reference () Design (gate netlist) Fix Reference Extract adder network Convert to gate netlist Fix Design Reference (adder network) Reference (gate netlist) no correct arithmetic function? is equivalent? no yes yes Design correct U.Krautz et al. Multiplier Verication 23

31 Motivation structure translated into gate-list reference functions synthesized into pre-dened blocks (Booth-encoder, adder,...) equivalence checked of reference against design (standard SAT solver) successful check requires similarities between reference and design similar inputs to adder-tree (same Booth-encoding) adder-tree topology assignments to adders (order of inputs) similarities through design concept in similarities result through methodology designer's responsibility U.Krautz et al. Multiplier Verication 24

32 - Final Motivation Reference () Design (gate netlist) Fix Reference Extract adder network Convert to gate netlist Fix Design Reference (adder network) Reference (gate netlist) no correct arithmetic function? is equivalent? no yes yes Design correct U.Krautz et al. Multiplier Verication 25

33 Scope of Method Motivation arithmetic circuits modeled at word-level, with easy to derive bit-level data-path verication arithmetic otherwise hard to obtain from gate netlist exible multicycle operations through unrolling U.Krautz et al. Multiplier Verication 26

34 Main Results Outline 1 Motivation The Basic Problem 2 3 Main Results U.Krautz et al. Multiplier Verication 27

35 Main Results Implementation/ Experiments prototype implementation (PERL) used on several industrial multipliers (IBM) complex instructions parallel operations in wide multipliers require dierent for each instruction Operation cpu time (operand's bit width) AP EC 4x4 0.6s 2s 8x8 1s 2s 8x8+8x8+8x8+8x8 9s 2s 16x16+16x16 9s 10s 24x24 7s 10s 53x53 8min 15s 64x64 14min 21s U.Krautz et al. Multiplier Verication 28

36 Main Results Conclusion suited for binary multiplier designs (FPU, FXU,...) manual eort negligible (formalization of typical design considerations) applied to complex instructions (multiply-add) unsigned, signed multiplication possible U.Krautz et al. Multiplier Verication 29

37 Verication method for multipliers: special reference description in (Arithmetic Reference Description Language) reference for simple bit arithmetic check - transformation to basic multiplication reference for construction of gate-list representation - equivalence check against design U.Krautz et al. Multiplier Verication 30

38 Thank you Questions? U.Krautz et al. Multiplier Verication 31

### Tutorial 5 Special Combinational Logic Circuit

Tutorial 5 Special Combinational Logic Circuit Question 1 a) What is the function of an adder circuit? b) A half-adder adds two binary bits, true or false? c) A half-adder has a sum output only, true or

### Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

Chapter 4 Register Transfer and Microoperations Section 4.1 Register Transfer Language Digital systems are composed of modules that are constructed from digital components, such as registers, decoders,

### CS/EE 260 Homework 5 Solutions Spring 2000

CS/EE 6 Homework 5 Solutions Spring (MK -) Construct a -to- line multiplexer with three 4-to- line multiplexers The multiplexers should be interconnected and inputs labeled so that the selection codes

### 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

### Simulation & Synthesis Using VHDL

Floating Point Multipliers: Simulation & Synthesis Using VHDL By: Raj Kumar Singh - B.E. (Hons.) Electrical & Electronics Shivananda Reddy - B.E. (Hons.) Electrical & Electronics BITS, PILANI Outline Introduction

### Computer Organization and Architecture

Computer Organization and Architecture Chapter 9 Computer Arithmetic Arithmetic & Logic Unit Performs arithmetic and logic operations on data everything that we think of as computing. Everything else in

### CS 151 Midterm. (Last Name) (First Name)

CS 151 Midterm Name Student ID Signature :, (Last Name) (First Name) : : Instructions: 1. Please verify that your paper contains 13 pages including this cover. 2. Write down your Student-Id on the top

### Chapter 4 Combinational Logic

Chapter 4 Combinational Logic Chih-Tsun Huang ( 黃稚存 ) Department of Computer Science National Tsing Hua University Outline Introduction Combinational Circuits Analysis Procedure Design Procedure Binary

### Chapter 4. Computer Arithmetic

Chapter 4 Computer Arithmetic 4.1 Number Systems A number system uses a specific radix (base). Radices that are power of 2 are widely used in digital systems. These radices include binary (base 2), quaternary

### RTL Design. Design Strategies. Structural Design. Behavioral Design. manufacturing processes and different devices with a minimum of redesign.

ELEC 379 : DESIGN OF DIGITAL AND MICROCOMPUTER SYSTEMS 1998/99 WINTER SESSION, TERM 2 RTL Design This lecture describes an approach to logic design called Register Transfer Level (RTL) or dataflow design.

### 1.10 (a) Effects of logic gates AND, OR, NOT on binary signals in a processor

Chapter 1.10 Logic Gates 1.10 (a) Effects of logic gates AND, OR, NOT on binary signals in a processor Microprocessors are the central hardware that runs computers. There are several components that make

### Exclusive OR/Exclusive NOR (XOR/XNOR)

Exclusive OR/Exclusive NOR (XOR/XNOR) XOR and XNOR are useful logic functions. Both have two or more inputs. The truth table for two inputs is shown at right. a XOR b = 1 if and only if (iff) a b. a XNOR

### Understanding Logic Design

Understanding Logic Design ppendix of your Textbook does not have the needed background information. This document supplements it. When you write add DD R0, R1, R2, you imagine something like this: R1

### CHAPTER 3 Boolean Algebra and Digital Logic

CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4

### By the end of the lecture, you should be able to:

Extra Lecture: Number Systems Objectives - To understand: Base of number systems: decimal, binary, octal and hexadecimal Textual information stored as ASCII Binary addition/subtraction, multiplication

### ECE3281 Electronics Laboratory

ECE328 Electronics Laboratory Experiment #4 TITLE: EXCLUSIVE-OR FUNCTIONS and INRY RITHMETIC OJECTIVE: Synthesize exclusive-or and the basic logic functions necessary for execution of binary arithmetic.

### COMPUTER ARCHITECTURE IT0205

COMPUTER ARCHITECTURE IT0205 M.Thenmozhi/Kayalvizhi Jayavel/M.B.Panbu Asst.Prof.(Sr.G)/Asst.Prof.(Sr.G)/Asst.Prof.(O.G) Department of IT SRM University, Kattankulathur 1 Disclaimer The contents of the

### Department of Electrical and Computer Engineering Faculty of Engineering and Architecture American University of Beirut Course Information

Department of Electrical and Computer Engineering Faculty of Engineering and Architecture American University of Beirut Course Information Course title: Computer Organization Course number: EECE 321 Catalog

### TECH. Arithmetic & Logic Unit. CH09 Computer Arithmetic. Number Systems. ALU Inputs and Outputs. Binary Number System

CH09 Computer Arithmetic CPU combines of ALU and Control Unit, this chapter discusses ALU The Arithmetic and Logic Unit (ALU) Number Systems Integer Representation Integer Arithmetic Floating-Point Representation

### EE361: Digital Computer Organization Course Syllabus

EE361: Digital Computer Organization Course Syllabus Dr. Mohammad H. Awedh Spring 2014 Course Objectives Simply, a computer is a set of components (Processor, Memory and Storage, Input/Output Devices)

### Combinational circuit. Fig. 4-1 Block Diagram of Combinational Circuit Prentice Hall, Inc. M. Morris Mano DIGITAL DESIGN, 3e.

n inputs ombinational circuit m outputs Fig. 4- Block Diagram of ombinational ircuit 22 Prentice Hall, Inc. A B T 2 F A B T T 3 F 2 A B A F 2 B Fig. 4-2 Logic Diagram for Analysis Example 22 Prentice Hall,

### Introduction Number Systems and Conversion

UNIT 1 Introduction Number Systems and Conversion Objectives 1. Introduction The first part of this unit introduces the material to be studied later. In addition to getting an overview of the material

### Multipliers. Introduction

Multipliers Introduction Multipliers play an important role in today s digital signal processing and various other applications. With advances in technology, many researchers have tried and are trying

### Chapter 4 Combinational Logic

EEA051 - Digital Logic 數位邏輯 Chapter 4 Combinational Logic 吳俊興國立高雄大學資訊工程學系 November 2005 Chapter 4 Combinational Logic 4-1 Combinational Circuits 4-2 Analysis Procedure 4-3 Design Procedure 4-4 Binary Adder-Subtractor

### Experiment 5. Arithmetic Logic Unit (ALU)

Experiment 5 Arithmetic Logic Unit (ALU) Objectives: To implement and test the circuits which constitute the arithmetic logic circuit (ALU). Background Information: The basic blocks of a computer are central

### (Or Gate) (And Gate) (Not Gate)

6 March 2015 Today we will be abstracting away the physical representation of logical gates so we can more easily represent more complex circuits. Specifically, we use the shapes themselves to represent

### Numbering Systems. Number Representations Part 1

Introduction The VHDL modeling language allows numbers being represented in several radix systems. The underlying circuit processes the number in binary, however, input into and output from such circuits

### Here 4 is the least significant digit (LSD) and 2 is the most significant digit (MSD).

Number System Introduction Number systems provide the basis for all operations in information processing systems. In a number system the information is divided into a group of symbols; for example, 26

### Sistemas Digitais I LESI - 2º ano

Sistemas Digitais I LESI - 2º ano Lesson 6 - Combinational Design Practices Prof. João Miguel Fernandes (miguel@di.uminho.pt) Dept. Informática UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA - PLDs (1) - The

### Fixed-Point Numbers. Positional representation: k whole and l fractional digits. x x 1. x k 2. . x 1

Fied-Point Numbers Positional representation: k whole and l fractional digits Value of a number: = ( k 1 k 2... 1 0. 1 2... l ) r = Σ i r i For eample: 2.375 = (10.011) two = (1 2 1 ) + (0 2 0 ) + (0 2

### Arithmetic of Number Systems

2 Arithmetic of Number Systems INTRODUCTION Arithmetic operations in number systems are usually done in binary because designing of logic networks is much easier than decimal. In this chapter we will discuss

### Combinational Logic. Combinational Circuits in Computers (Examples) Design of Combinational Circuits. CC Design Example

Combinational Circuits in Computers (Examples) Combinational Logic Translates a set of Boolean n input variables ( or ) by a mapping function (using Boolean operations) to produce a set of Boolean m output

### A4-R3: COMPUTER ORGANISATION

A4-R3: COMPUTER ORGANISATION NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF ANSWER

### 1. Realization of gates using Universal gates

1. Realization of gates using Universal gates Aim: To realize all logic gates using NAND and NOR gates. Apparatus: S. No Description of Item Quantity 1. IC 7400 01 2. IC 7402 01 3. Digital Trainer Kit

Experiment 2 Exclusive -OR-GATE, HALF ADDER, FULL ADDER Objective -To investigate the logical properties of the exclusive-or function. -To implement a number of different logic functions by means of exclusive-or

### Example-driven Interconnect Synthesis for Heterogeneous Coarse-Grain Reconfigurable Logic

Example-driven Interconnect Synthesis for Heterogeneous Coarse-Grain Reconfigurable Logic Clifford Wolf, Johann Glaser, Florian Schupfer, Jan Haase, Christoph Grimm Computer Technology /99 Overview Ultra-Low-Power

### 8-bit 4-to-1 Line Multiplexer

Project Part I 8-bit 4-to-1 Line Multiplexer Specification: This section of the project outlines the design of a 4-to-1 multiplexor which takes two 8-bit buses as inputs and produces a single 8-bit bus

### Redundant Radix-4 Representation With High Speed Arithmetic Coprocessor Using Carry Save And Redundant Signed Digit Technique

Redundant Radix-4 Representation With High Speed Arithmetic Coprocessor Using Carry Save And Redundant Signed Digit Technique Ashish Manoharrao Ingale Abstract: Division is the inverse of multiplication

### Chapter 2: Number Systems

Chapter 2: Number Systems Logic circuits are used to generate and transmit 1s and 0s to compute and convey information. This two-valued number system is called binary. As presented earlier, there are many

### Digital Systems Design

Digital Systems Design Review of Combinatorial Circuit Building Blocks: VHDL for Combinational Circuits Dr. D. J. Jackson Lecture 3-1 Introduction to VHDL Designer writes a logic circuit description in

### COMBINATIONAL LOGIC CIRCUITS

COMBINATIONAL LOGIC CIRCUITS 4.1 INTRODUCTION The digital system consists of two types of circuits, namely: (i) Combinational circuits and (ii) Sequential circuits A combinational circuit consists of logic

### Fractional Numbers. Fractional Number Notations. Fixed-point Notation. Fixed-point Notation

2 Fractional Numbers Fractional Number Notations 2010 - Claudio Fornaro Ver. 1.4 Fractional numbers have the form: xxxxxxxxx.yyyyyyyyy where the x es constitute the integer part of the value and the y

### Integer Numbers. The Number Bases of Integers Textbook Chapter 3

Integer Numbers The Number Bases of Integers Textbook Chapter 3 Number Systems Unary, or marks: /////// = 7 /////// + ////// = ///////////// Grouping lead to Roman Numerals: VII + V = VVII = XII Better:

### Circuit and System Representation. IC Designers must juggle several different problems

Circuit and System Representation IC Designers must juggle several different problems Multiple levels of abstraction IC designs requires refining an idea through many levels of detail, specification ->

### Module-I Lecture-I Introduction to Digital VLSI Design Flow

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course Module-I Lecture-I Introduction to Digital VLSI Design Flow Introduction The functionality of electronics equipments and gadgets

### CS 16: Assembly Language Programming for the IBM PC and Compatibles

CS 16: Assembly Language Programming for the IBM PC and Compatibles First, a little about you Your name Have you ever worked with/used/played with assembly language? If so, talk about it Why are you taking

### Logic Design. Dr. Yosry A. Azzam

Logic Design Dr. Yosry A. Azzam Binary systems Chapter 1 Agenda Binary Systems : Binary Numbers, Binary Codes, Binary Logic ASCII Code (American Standard Code for Information Interchange) Boolean Algebra

### Arithmetic Packages- Introduction

Arithmetic Packages- Introduction It would be very painful if when building a counter we had to think about all the internals We need an adder etc.» How do we build the adder? Would be much better if we

### CMPS 10 Winter Homework Assignment 5

CMPS 10 Winter 2011- Homework Assignment 5 Problems: Chapter 4 (p.184): 1abc, 3abcd, 4ab, 5abc, 6, 7, 9abcd, 15abcd, 17, 18, 19, 20 1. Given our discussion of positional numbering systems in Section 4.2.1,

### Aims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic

Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go

### LECTURE 2: Number Systems

LECTURE : Number Systems CIS Fall 7 Instructor: Dr. Song Xing Department of Information Systems California State University, Los Angeles Learning Objectives Review Boolean algebra. Describe numbering systems

### Numbering Systems. Number Representations Part 1

Lab Workbook Introduction The VHDL modeling language allows numbers being represented in several radix systems. The underlying digital circuit processes the number in binary, however, input into and output

### Switching Circuits & Logic Design

Switching Circuits & Logic Design Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Fall 2013 1 1 Number Systems and Conversion Babylonian number system (3100 B.C.)

### Project 1: ModelSim Tutorial and Verilog Basics

is project will give you a basic understanding of ModelSim and the Verilog hardware description language (HDL). ModelSim is an IDE for hardware design which provides behavioral simulation of a number of

### Combinational logic design case studies

Combinational logic design case studies General design procedure Case studies CD to 7-segment display controller logical function unit process line controller calendar subsystem rithmetic circuits integer

### Two s Complement Arithmetic

Two s Complement Arithmetic We now address the issue of representing integers as binary strings in a computer. There are four formats that have been used in the past; only one is of interest to us. The

### Boolean Representations and Combinatorial Equivalence

Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discuss the applications of these representations for proving

### ELEC 1041 Digital Electronics. Tutorial: Combinational Logic Design Examples Saeid Nooshabadi. Problem #1.

Problem #1 ELEC 1041 Digital Electronics Tutorial: Combinational Logic Design Examples Saeid Nooshabadi http://subjects.ee.unsw.edu.au/~elec1041 Develop a minimized Boolean implementation of a ones count

### ISSN: [Ukande* et al., 5(10): October, 2016] Impact Factor: 4.116

IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY HIGH SPEED LOW POWER 32 BIT ALU IMPLEMENTATION Vikesh Ukande*, Ankit Pandit * M.Tech Scholar, Department of ECE, AISECT University,

### Welcome to the National Instruments presentation of the Spartan-3E Starter Board as an academic learning platform.

Welcome to the National Instruments presentation of the Spartan-3E Starter Board as an academic learning platform. Understanding digital logic and FPGA concepts can be daunting for some undergraduate students,

### Binary. ! You are probably familiar with decimal

Arithmetic operations in assembly language Prof. Gustavo Alonso Computer Science Department ETH Zürich alonso@inf.ethz.ch http://www.inf.ethz.ch/department/is/iks/ Binary! You are probably familiar with

### Section Summary. Integer Representations. Base Conversion Algorithm Algorithms for Integer Operations

Section 4.2 Section Summary Integer Representations Base b Expansions Binary Expansions Octal Expansions Hexadecimal Expansions Base Conversion Algorithm Algorithms for Integer Operations Representations

### Binary Division. Decimal Division. Hardware for Binary Division. Simple 16-bit Divider Circuit

Decimal Division Remember 4th grade long division? 43 // quotient 12 521 // divisor dividend -480 41-36 5 // remainder Shift divisor left (multiply by 10) until MSB lines up with dividend s Repeat until

### An Efficient RNS to Binary Converter Using the Moduli Set {2n + 1, 2n, 2n 1}

An Efficient RNS to Binary Converter Using the oduli Set {n + 1, n, n 1} Kazeem Alagbe Gbolagade 1,, ember, IEEE and Sorin Dan Cotofana 1, Senior ember IEEE, 1. Computer Engineering Laboratory, Delft University

### EE360: Digital Design I Course Syllabus

: Course Syllabus Dr. Mohammad H. Awedh Fall 2008 Course Description This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential

### THE advantages of using the residue number system (RNS)

IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II: EXPRESS BRIEFS, VOL. 54, NO. 9, SEPTEMBER 2007 775 RNS-To-Binary Converter for a New Three-Moduli Set 2 n+1 1; 2 n ; 2 n 1 Pemmaraju V. Ananda Mohan, Fellow,

### Part 1: Logic Design. Tutorial

CPIT2 : Computer Organization and Architecture Course Lectures by Prof. Mohamed Khamis Part : Logic Design Tutorial by Teaching Assistant. Khalid Alharbi Department of Information Technology Faculty of

### Circuits and Boolean Expressions

Circuits and Boolean Expressions Provided by TryEngineering - Lesson Focus Boolean logic is essential to understanding computer architecture. It is also useful in program construction and Artificial Intelligence.

### Data types. lecture 4

Data types lecture 4 Information in digital computers is represented using binary number system. The base, i.e. radix, of the binary system is 2. Other common number systems: octal (base 8), decimal (base

### UNIT I NUMBER SYSTEM AND BINARY CODES

1 UNIT I NUMBER SYSTEM AND BINARY CODES 1.0 Aims and Objectives 1.1 Introduction 1.2 Number System 1.2.1 Decimal Number System 1.2.2 Bi-stable Devices 1.2.3 Binary Number System 1.2.4 Octal number System

### A New Non-Restoring Square Root Algorithm and Its VLSI Implementations

International Conference on Computer Design (ICCD 96), October 7 9, 996, Austin, Texas, USA A New Non-Restoring Square Root Algorithm and Its VLSI Implementations Yamin Li and Wanming Chu Computer Architecture

### Review of ECE 230 Material Prof. A. Mason, Michigan State University

Review of ECE 230 Material Prof. A. Mason, Michigan State University Preface This document was developed for students taking ECE 331 to review material covered in ECE 230. It will be assumed that ECE 331

### Implementation of Modified Booth Algorithm (Radix 4) and its Comparison with Booth Algorithm (Radix-2)

Advance in Electronic and Electric Engineering. ISSN 2231-1297, Volume 3, Number 6 (2013), pp. 683-690 Research India Publications http://www.ripublication.com/aeee.htm Implementation of Modified Booth

### Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

### Signed Arithmetic in Verilog 2001 Opportunities and Hazards

Signed Arithmetic in Verilog 2001 Opportunities and Hazards Dr. Greg Tumbush, Starkey Labs, Colorado Springs, CO Introduction Starkey Labs is in the business of designing and manufacturing hearing aids.

### Theory of Logic Circuits. Laboratory manual. Exercise 6

Zakład Mikroinformatyki i Teorii Automatów Cyfrowych Theory of Logic Circuits Laboratory manual Exercise 6 Selected arithmetic switching circuits 2008 Tomasz Podeszwa, Piotr Czekalski (edt.) 1. Number

### A single register, called the accumulator, stores the. operand before the operation, and stores the result. Add y # add y from memory to the acc

Other architectures Example. Accumulator-based machines A single register, called the accumulator, stores the operand before the operation, and stores the result after the operation. Load x # into acc

### ECE 3401 Lecture 9. VHDL for Arithmetic Functions and Circuits

ECE 3401 Lecture 9 VHDL for Arithmetic Functions and Circuits Outline Arithmetic Functions and Circuits: operate on binary vectors, use the same sub-function in each bit position Adders Multipliers Others

### IMPLEMENTATION OF HIGH SPEED ENHANCED CSLA BASED ON GATED D-LATCH

IMPLEMENTATION OF HIGH SPEED ENHANCED BASED ON GATED D-LATCH 1 MEDA NAGAPAVANI, 2 T. JYOTHI 1 P.G Student, VLSI Design, Dept of ECE, 2 Assistant Professor, Dept of ECE. Sri Venkatesa Perumal College of

### Logic and Computer Design Fundamentals. Part 1 Chapter 4 Basics and Types of Descriptions!

Logic and Computer Design Fundamentals Verilog! Part 1 Chapter 4 Basics and Types of Descriptions! Charles Kime & Thomas Kaminski 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View

### 4 BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION

4 BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION BOOLEAN OPERATIONS AND EXPRESSIONS Variable, complement, and literal are terms used in Boolean algebra. A variable is a symbol used to represent a logical quantity.

### MT1 Number Systems. In general, the number a 3 a 2 a 1 a 0 in a base b number system represents the following number:

MT1 Number Systems MT1.1 Introduction A number system is a well defined structured way of representing or expressing numbers as a combination of the elements of a finite set of mathematical symbols (i.e.,

### Review of Gates in Digital Electronics

pp. 22-26 Krishi Sanskriti Publications http://www.krishisanskriti.org/areee.html Review of Gates in Digital Electronics Divya Aggarwal Student, Department of Physics, University of Delhi Abstract: Digital

### Life Cycle of a Memory Request. Ring Example: 2 requests for lock 17

Life Cycle of a Memory Request (1) Use AQR or AQW to place address in AQ (2) If A[31]==0, check for hit in DCache Ring (3) Read Hit: place cache word in RQ; Write Hit: replace cache word with WQ RDDest/RDreturn

### Comp 150 Booleans and Digital Logic

Comp 150 Booleans and Digital Logic Recall the bool date type in Python has the two literals True and False and the three operations: not, and, or. The operations are defined by truth tables (see page

### COMBINATIONAL CIRCUITS

COMBINATIONAL CIRCUITS http://www.tutorialspoint.com/computer_logical_organization/combinational_circuits.htm Copyright tutorialspoint.com Combinational circuit is a circuit in which we combine the different

### Binary Representation and Computer Arithmetic

Binary Representation and Computer Arithmetic The decimal system of counting and keeping track of items was first created by Hindu mathematicians in India in A.D. 4. Since it involved the use of fingers

### Introduction to Paging

Introduction to Paging Readings Silberschatz: 8.2, 8.4 Outline Introduction to Paging Concepts Introduction Previous memory schemes were characterized by Need for compaction External fragmentation Paging

### Design Cycle for Microprocessors

Cycle for Microprocessors Raúl Martínez Intel Barcelona Research Center Cursos de Verano 2010 UCLM Intel Corporation, 2010 Agenda Introduction plan Architecture Microarchitecture Logic Silicon ramp Types

### IMPLEMENTATION OF HIGH SPEED ENHANCED CSLA BASED ON GATED D-LATCH:

IMPLEMENTATION OF HIGH SPEED ENHANCED BASED ON GATED D-LATCH 1 MEDA NAGAPAVANI, 2 T. JYOTHI 1 P.G Student, VLSI Design, Dept of ECE, 2 Assistant Professor, Dept of ECE. Sri Venkatesa Perumal College of

### FORDHAM UNIVERSITY CISC 3593. Dept. of Computer and Info. Science Spring, 2011. The Binary Adder

FORDHAM UNIVERITY CIC 3593 Fordham College Lincoln Center Computer Organization Dept. of Computer and Info. cience pring, 2011 1 Introduction The Binar Adder The binar adder circuit is an important building

### CPE 323 Data Types and Number Representations

CPE 323 Data Types and Number Representations Aleksandar Milenkovic Numeral Systems: Decimal, binary, hexadecimal, and octal We ordinarily represent numbers using decimal numeral system that has 10 as

### Arithmetic Operations

Arithmetic Operations Dongbing Gu School of Computer Science and Electronic Engineering University of Essex UK Spring 2013 D. Gu (Univ. of Essex) Arithmetic Operations Spring 2013 1 / 34 Outline 1 Introduction

### Oct: 50 8 = 6 (r = 2) 6 8 = 0 (r = 6) Writing the remainders in reverse order we get: (50) 10 = (62) 8

ECE Department Summer LECTURE #5: Number Systems EEL : Digital Logic and Computer Systems Based on lecture notes by Dr. Eric M. Schwartz Decimal Number System: -Our standard number system is base, also

### Floating Point Fused Add-Subtract and Fused Dot-Product Units

Floating Point Fused Add-Subtract and Fused Dot-Product Units S. Kishor [1], S. P. Prakash [2] PG Scholar (VLSI DESIGN), Department of ECE Bannari Amman Institute of Technology, Sathyamangalam, Tamil Nadu,

### Examples of Solved Problems for Chapter3,5,6,7,and8

Chapter 3 Examples of Solved Problems for Chapter3,5,6,7,and8 This document presents some typical problems that the student may encounter, and shows how such problems can be solved. Note that the numbering