Copyright Joanne DeGroat, ECE, OSU

Slides:



Advertisements
Similar presentations
Fixed Point Numbers The binary integer arithmetic you are used to is known by the more general term of Fixed Point arithmetic. Fixed Point means that we.
Advertisements

Binary Arithmetic Binary addition Binary subtraction
Representing fractions – Fixed point The problem: How to represent fractions with finite number of bits ?
Faculty of Computer Science © 2006 CMPUT 229 Floating Point Representation Operating with Real Numbers.
CSE 378 Floating-point1 How to represent real numbers In decimal scientific notation –sign –fraction –base (i.e., 10) to some power Most of the time, usual.
Floating Point Numbers
ECEN 248 Integer Multiplication, Number Format Adopted from Copyright 2002 David H. Albonesi and the University of Rochester.
Computer ArchitectureFall 2008 © August 27, CS 447 – Computer Architecture Lecture 4 Computer Arithmetic (2)
9/15/09 - L15 Decoders, Multiplexers Copyright Joanne DeGroat, ECE, OSU1 Binary additon & subtraction.
1/8/ L24 IEEE Floating Point Basics Copyright Joanne DeGroat, ECE, OSU1 IEEE Floating Point The IEEE Floating Point Standard and execution.
Simple Data Type Representation and conversion of numbers
Numbers and number systems
Fundamental of Computer Architecture By Panyayot Chaikan November 01, 2003.
Data Representation and Computer Arithmetic
ECE232: Hardware Organization and Design
1/8/ L24 IEEE Floating Point Basics Copyright Joanne DeGroat, ECE, OSU1 IEEE Floating Point The IEEE Floating Point Standard and execution.
Floating Point Numbers Topics –IEEE Floating Point Standard –Rounding –Floating Point Operations –Mathematical properties.
EE694v-Verification-Lect11-1- Lect : The FP adder test plan As noted earlier – there is a difference in black box and while box testing and verificiation.
Oct. 18, 2007SYSC 2001* - Fall SYSC2001-Ch9.ppt1 See Stallings Chapter 9 Computer Arithmetic.
9.4 FLOATING-POINT REPRESENTATION
Fixed and Floating Point Numbers Lesson 3 Ioan Despi.
9/15/09 - L15 Decoders, Multiplexers Copyright Joanne DeGroat, ECE, OSU1 Decoders and Multiplexer Circuits.
1/8/ L24 IEEE Floating Point Basics Copyright Joanne DeGroat, ECE, OSU1 IEEE Floating Point The IEEE Floating Point Standard and execution.
Integer and Fixed Point P & H: Chapter 3
Computer Architecture Lecture 22 Fasih ur Rehman.
Computer Arithmetic See Stallings Chapter 9 Sep 10, 2009
Numbers in Computers.
CS 232: Computer Architecture II Prof. Laxmikant (Sanjay) Kale Floating point arithmetic.
Representation of Data (Part II) Computer Studies Notes: chapter 19 Ma King Man.
1/8/ L25 Floating Point Adder Copyright Joanne DeGroat, ECE, OSU1 IEEE Floating Point Adder Using the IEEE Floating Point Standard for an.
Cosc 2150: Computer Organization Chapter 9, Part 3 Floating point numbers.
MATH Lesson 2 Binary arithmetic.
Floating Point Representations
Binary Numbers The arithmetic used by computers differs in some ways from that used by people. Computers perform operations on numbers with finite and.
Number Representation
2.4. Floating Point Numbers
Floating Point Representations
CSCI206 - Computer Organization & Programming
Recitation 4&5 and review 1 & 2 & 3
Integer Division.
Lecture 9: Floating Point
Topics IEEE Floating Point Standard Rounding Floating Point Operations
CS 232: Computer Architecture II
IEEE floating point format
CS 367 Floating Point Topics (Ch 2.4) IEEE Floating Point Standard
Copyright Joanne DeGroat, ECE, OSU
PRESENTED BY J.SARAVANAN. Introduction: Objective: To provide hardware support for floating point arithmetic. To understand how to represent floating.
Outline Introduction Floating Point Arithmetic Adder Multiplier.
Topic 3d Representation of Real Numbers
Luddy Harrison CS433G Spring 2007
Number Representations
CSCI206 - Computer Organization & Programming
The IEEE Floating Point Standard and execution units for it
How to represent real numbers
Incrementing and Decrementing
Design Specification Document
IEEE Floating Point Adder
A floating point multiplier behavior model.
How are negative and rational numbers represented on the computer?
Step 2 in behavioral modeling. Use of procedures.
IEEE Floating Point Adder Verification
A floating point multiplier behavior model.
The IEEE Floating Point Standard and execution units for it
A floating point multiplier behavior model.
Step 2 in behavioral modeling. Use of procedures.
Topic 3d Representation of Real Numbers
L4 – An overview of Quartis
Overview Fractions & Sign Extension Floating Point Representations
Number Representations
Presentation transcript:

Copyright 2008 - Joanne DeGroat, ECE, OSU Directed Random Test 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Copyright 2008 - Joanne DeGroat, ECE, OSU Lecture overview Open discussion of Verification Plan on Project A Verification Plans are living documents ??? Generation of Random Stimulus Directed Random Tests An Example 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Generation of Random Stimulus “Random stimulus is created by a random generator that can be constrained according to the verification plan.” Often used for automatic generation of test stimulus. And easy way to generate many test cases (transactions) easily. 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Totally Random vs Constrained Random Consider the Floating Point Adder If the 32 bits are randomly generated Most likely a normalized number (probability very high) Occurrences of NaN, +/- Inif, and 0 will be very minimal – some may not even occur over several thousand vectors Constrain the random generation so that all cases are adequately covered. 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Testing the Floating Point Adder Step 1 – have adequate test of each class +/- each other class Nan and each of +/- Inifity +/- 0 +/- Normalized number +/- Denormalized number For the case of normalized and denormalized must have adequate number of case to insure conficence 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Copyright 2008 - Joanne DeGroat, ECE, OSU Continuing the tests For +/- Inifinity +/- 0 +/- Normalized numbers +/- Denormalized For +/- 0 As there + and – representations must do the tests for both and across an adequate number of vectors for each case to insure confidence 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Copyright 2008 - Joanne DeGroat, ECE, OSU The real work Special cases covered – Nan, Inif, and 0 are specific formats and limited to just 6 vectors Normalized and denormalized vectors make up the rest of the 264 vector space with normalized number making up the bulk of that space. 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Specific tests for these Special cases that you want to test for – and you want more than testing one instance You add two large normalized numbers and the result is the largest representable normalized number You add two large normalized numbers and the result overflows to Inifinity You add a large normalized number and a small normalized number and the result is the largest representable normalized number You add a large normalized numbers and a small normalized number and the result overflows to Infinity 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Test for the other boundary Test for the normalized/denormalized boundary Add/Subtract two normalized numbers with the result being The smallest normalized number The largest denormalized number Add/Subtract a normalized number and a denormalized number with the result beign 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

More test for the boundary Add/Subtract two denormalized numbers with the result beign The smallest normalized number The largest denormalized number One you are confident you have the boundary conditions covered you can now use random test generation 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

The bulk of the operational space These special cases are less than 1% of the total test space. Need to apply vectors such that your confidence is high that all parts of the unit have been sufficiently exercised. Can design test vectors to specifically test having a result with a leading 1 bit in each position. Can have test vectors that result in no carry ripple and those that have maximum carry ripple 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Copyright 2008 - Joanne DeGroat, ECE, OSU The use of random Can use constrained random to generate a lot of test. For normalized number operation - Start by breaking up vector into fields. The sign, the exponent and the fractional part Generate the exponents randomly between 1 and 254 Generate the fractional part randomly – knowing you have the assumed 1. For Denormalized Here only need the fractional part 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Constraining the random Want to subtract a normalized and denormalized to get either a normalized or denorm result. Set the exponent and sign Generate the fractional part randomly but constrain the range of the random value generated such that the result will be in a range to realized the test objective. 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU

Generation of Random Vectors Numerous ways to generate the random vectors C or C++ program MATLAB script or program By hand (but only for very limited cases) A combination of these and others 10/2/08 - Directed Random Test Copyright 2008 - Joanne DeGroat, ECE, OSU