Informationsteknologi Todays class Floating point numbers n Computer
Informationsteknologi Today’s class Floating point numbers n Computer systems organization n Friday, October 19, 2007 Computer Architecture I - Class 6 1
Informationsteknologi Principles of Floating Point n n Must separate range from precision Use scientific notation n = f × 10 e f is the fraction or mantissa ® e is the exponent (a positive or negative integer) ® n Examples 3. 14 = 0. 314 × 101 = 3. 14 × 100 0. 000001 = 0. 1 × 10− 5 = 1. 0 × 10− 6 1941 = 0. 1941 × 104 = 1. 941 × 103 Friday, October 19, 2007 Computer Architecture I - Class 6 2
Informationsteknologi Seven Regions of Real Number Line n n n n Large negative numbers less than − 0. 999 × 1099 Negative numbers between − 0. 999 × 1099 and − 0. 100 × 10− 99 Small negative numbers, magnitudes less than 0. 100 × 10− 99 Zero Small positive numbers, magnitudes less than 0. 100 × 10− 99 Positive numbers between 0. 100 × 10− 99 and 0. 999 × 1099 Large positive numbers greater than 0. 999 × 1099 Friday, October 19, 2007 Computer Architecture I - Class 6 3
Informationsteknologi Seven Regions of Real Number Line Friday, October 19, 2007 Computer Architecture I - Class 6 4
Informationsteknologi Approximate Bounds of Expressible Floating-Point Numbers (Unnormalized) Friday, October 19, 2007 Computer Architecture I - Class 6 5
Informationsteknologi Normalized numbers Examples of normalized floating-point numbers. Friday, October 19, 2007 Computer Architecture I - Class 6 6
Informationsteknologi IEEE Floating-Point Standard 754 IEEE floating-point formats. (a) Single precision. (b) Double precision. Friday, October 19, 2007 Computer Architecture I - Class 6 7
Informationsteknologi IEEE Floating-point Standard 754 Characteristics of IEEE floating-point numbers. Friday, October 19, 2007 Computer Architecture I - Class 6 8
Informationsteknologi IEEE Numerical Types Friday, October 19, 2007 Computer Architecture I - Class 6 9
Informationsteknologi In-Class Exercise n Convert the following numbers to IEEE singleprecision format. Give the results as 8 hexadecimal digits. 9. 0 ® -6. 125 ® n Convert the following IEEE single-precision floating-point numbers from hex to decimal: 42 E 48000 ® 3 F 880000 ® Friday, October 19, 2007 Computer Architecture I - Class 6 10
Computer Systems Organization
Informationsteknologi Organization of a simple computer Friday, October 19, 2007 Computer Architecture I - Class 6 12
Informationsteknologi CPU Organization Friday, October 19, 2007 Computer Architecture I - Class 6 13
Informationsteknologi Instructions n Register-memory Allow memory words to be fetched into registers ® Allow registers to be stored to memory words ® n Register-register Fetches two operands from the registers ® Brings them to the ALU input registers ® Performs some operation on them ® Stores the result back in one of the registers ® Friday, October 19, 2007 Computer Architecture I - Class 6 14
Informationsteknologi Instruction Execution Steps n n n n Fetch next instruction from memory into instruction register Change program counter to point to next instruction Determine type of instruction just fetched If instruction uses a word in memory, determine where it is Fetch word, if needed, into CPU register Execute the instruction Go to step 1 to begin executing the following instruction Friday, October 19, 2007 Computer Architecture I - Class 6 15
Informationsteknologi Design Principles for Modern Computers All instructions are directly executed by hardware n Maximize the rate at which instructions are issued n Instructions should be easy to decode n Only loads and stores should reference memory n Provide plenty of registers n Friday, October 19, 2007 Computer Architecture I - Class 6 16
Informationsteknologi Instruction-Level Parallelism Friday, October 19, 2007 Computer Architecture I - Class 6 17
Informationsteknologi Pipelining effect n n n Suppose the cycle time of the machine is 2 ns For the 5 -stage pipeline shown in the previous slide, it takes 10 ns for an instruction to completely execute It appears this machine can run at 100 MIPS However, it’s much better than this At every clock cycle, starting with the 5 th, one instruction completes execution This gives an actual processing rate of 500 MIPS Friday, October 19, 2007 Computer Architecture I - Class 6 18
Informationsteknologi Dual Pipelines n If one pipeline is good, two must be better! Friday, October 19, 2007 Computer Architecture I - Class 6 19
Informationsteknologi Superscalar Architecture Friday, October 19, 2007 Computer Architecture I - Class 6 20
Informationsteknologi Processor-Level Parallelism Friday, October 19, 2007 Computer Architecture I - Class 6 21
Informationsteknologi Multiprocessors A single-bus multiprocessor Friday, October 19, 2007 A multicomputer with local memories Computer Architecture I - Class 6 22
Informationsteknologi Memory Most basic unit of memory is the bit, a 0 or 1 (binary digit) n Smallest addressable unit of memory in a computer is the byte (containing 8 bits) n Words are groups of bytes, typically 4 bytes (32 bits) to a word n Friday, October 19, 2007 Computer Architecture I - Class 6 23
Informationsteknologi Big- and Little-Endian n Bytes can be numbered left-to-right or right-to left Friday, October 19, 2007 Computer Architecture I - Class 6 24
Informationsteknologi Byte Ordering Friday, October 19, 2007 Computer Architecture I - Class 6 25
Informationsteknologi Parity Memories can have occasional errors n Errors will be bit inversions n Can detect one-bit errors by adding an extra bit called a parity bit n This bit is set or cleared so that the total number of 1’s in the word is either even or odd, depending on which type of parity is being used n Friday, October 19, 2007 Computer Architecture I - Class 6 26
Informationsteknologi Codewords n n n Let one memory word consist of m data bits Let’s add r redundant (or check or parity) bits Total length is n bits, where n = m + r The n-bit unit is called a codeword Given two codewords you can determine how many bits differ by computing the exclusive or (XOR) of the two codewords and counting how many 1 s are in the result This sum is called the Hamming distance Friday, October 19, 2007 Computer Architecture I - Class 6 27
Informationsteknologi How Many Check Bits? There are 2 m valid memory words n Each valid memory word has n illegal codewords 1 bit away from it n Thus, each of the 2 m valid words needs n+1 bit patterns dedicated to it n Total number of bit patterns is 2 n n So, (n+1)2 m ≤ 2 n, or (m+r+1) ≤ 2 r n Friday, October 19, 2007 Computer Architecture I - Class 6 28
Informationsteknologi Number of check bits for a code that can correct a single error Friday, October 19, 2007 Computer Architecture I - Class 6 29
Informationsteknologi Error Correcting Codes (a) Encoding of 1100 (b) Even parity added (c) Error in AC Friday, October 19, 2007 Computer Architecture I - Class 6 30
Informationsteknologi Hamming Codes n n n 16 -bit word needs 5 parity bits The parity bits are the bits whose positions are powers of 2 Bit b is checked by the parity bits whose positions sum to b ® For example, bit 6 is checked by bits 2 and 4 Friday, October 19, 2007 Computer Architecture I - Class 6 31
Informationsteknologi Cache Memory Friday, October 19, 2007 Computer Architecture I - Class 6 32
Informationsteknologi Memory Hierarchy Friday, October 19, 2007 Computer Architecture I - Class 6 33
Informationsteknologi Magnetic Disk Format Friday, October 19, 2007 Computer Architecture I - Class 6 34
Informationsteknologi Disk Platters Friday, October 19, 2007 Computer Architecture I - Class 6 35
Informationsteknologi Disk Performance n n n n First, arm must be moved to the correct track; this is called a seek Average seek times between random tracks are in the range 5 -10 ms Then we have the rotational delay to find the correct sector Average rotational delay is 3 -6 ms Transfer time depends on the linear density and rotation speed Typical transfer times for one sector are 13 -26 μs Clearly seek time and rotational delay dominate the transfer time Friday, October 19, 2007 Computer Architecture I - Class 6 36
Informationsteknologi Zones n n Outer tracks of a disk have larger circumferences than inner tracks Thus linear density is lower the further out you go To increase capacity the disk is divided into zones (there are 5 zones to the right) The number of sectors per track is increased as you move from zone to zone going outward Friday, October 19, 2007 Computer Architecture I - Class 6 37
Informationsteknologi CD-ROM Friday, October 19, 2007 Computer Architecture I - Class 6 38
Informationsteknologi CD-ROM Logical Data Layout Friday, October 19, 2007 Computer Architecture I - Class 6 39
Informationsteknologi DVD Smaller pits than CD (0. 4 microns vs. 0. 8 microns for CD) n Tighter spiral (0. 74 microns vs. 1. 6 microns for CD) n Capacity is 4. 7 GB n Friday, October 19, 2007 Computer Architecture I - Class 6 40
Informationsteknologi Input/Output Friday, October 19, 2007 Computer Architecture I - Class 6 41
Informationsteknologi Buses Friday, October 19, 2007 Computer Architecture I - Class 6 42
- Slides: 42