210 likes | 347 Vues
This lecture, led by Prof. Chung-Kuan Cheng, provides an introduction to computer arithmetic algorithms and hardware design. It covers essential topics, including binary numbers, signed numbers, addition/subtraction methods, and various number representations. Students will explore classic problems, advancements in technology, and their impacts on reliability and power efficiency within arithmetic operations. The lecture outlines course expectations, grading policies, and suggested readings to enhance understanding in the domain of arithmetic algorithms and hardware implementation.
E N D
CSE 246: Computer Arithmetic Algorithms and Hardware Design Winter 2005 Lecture 1: Numbers Instructor: Prof. Chung-Kuan Cheng
Agenda • Administrative • Motivation • Lecture 1: Numbers
Administrative • Textbook: Computer Arithmetic Algorithms, Israel Koren, 2nd Edition, Published by AK Peters Natick, Massachusetts • Recommended: Art of Computer Programming, Volume 2, Seminumerical Algorithms (3rd Edition), Donald E. Knuth • In addition: set of papers to read
Administrative • Grading: • Homework – 20% • Midterm – 35% • Project • Report – 25% • Presentation – 20% • Midterm: Tuesday, Feb. 8th • Homework 1: • Due: 1/18/05
Administrative • Potential project samples: • Design interconnect and switch modules • Use FPGAs, nano technologies for add/sub • Design reconfigurable blocks • Design Low power adder, multiplier • Invent Low power/reliable number systems
Agenda • Administrative • Motivation • Lecture 1: Numbers
Motivation Why do we care about arithmetic algorithms and hardware design? • Classic problems – well defined • Advancements will have a huge impact • Solutions will be widely used • New paradigm • Interconnect dominated: clock, control, bus, signal • Power driven • Reliability centric • FPGAs
Motivation • Should a new business focus on building market or new technology? • New technology: a market will be built around new technology
Motivation • What if we had a 10GHz chip that was 2 cm x 2 cm? • It takes 2 clock cycles (time of flight) to get from one end of the chip to the other • How would the clock be distributed? • What if the electrical input is 1 Volt/100 Watts? How do we get 100 Amps through the chip?
Topics • Numbers • Binary numbers, negative numbers, redundant numbers, residual numbers • Addition/Subtraction • Prefix adders (zero deficiency) • Multiplication/Division • Floating point operations • Functions: (sqrt),log, exp, CORDIC • Optimization, analysis, fault tolerance
Other Topics • Potential focus on the following topics: • Power reduction • Interconnect • FPGAs
Goals/Background • Why do you want to take this class? What would you like to learn? • Fulfill course requirement • Hardware • Software • Work • Research • Curiosity
Agenda • Administrative • Motivation • Lecture 1: Numbers
Numbers • Special Symbols • Symbols used to represent a value • Roman Numerals 1 = I 100 = C 5 = V 500 = D 10 = X 1000 = M 50 = L For example: 2004 = MMIV
Numbers • Position Symbols • The value depends on the position of the number • For example: 125 = 100 + 20 + 5 One 100, Two 10s, and Five 1s Another example: 1 hour, 3 minutes • Positional systems includes radixes: 2, -2, 2, 2j (imaginary)
Numbers • Summation of positional numbers • Given: • Value is: (where y is the base) • For example: • Consider • Note that position systems provide a complete range of numbers (e.g. –2 to 5)
Signed Numbers • Biased numbers • Signed Bit • Complementary representation • Positive number: x (mod p) • Negative number: (M-x) (mod p) (Note: mod p is added implicitly) • One’s complement Two’s complement M=2n-1 M=2n Flip each bit Flip each bit + 1 • Two’s complement can be used for subtraction
Signed Numbers • Two’s complement subtraction: • (M-x+M-y) mod M = M-(x+y) • Two’s complement conversion: • Positive number: • To negative:
Signed Numbers • Two’s complement Proof as follows: Which leads to: Example:
Next time • Talk about redundant numbers