160 likes | 340 Views
DRAM capacity. 1000M ~2004. 1000 100 10 1 0.1 0.01 0.001. 512M. 256M. 64M. 16M. 4M. Mbit capacity. 1M. 64K. 256K. 15K. 1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000. Abstract view of a computer.
E N D
DRAM capacity 1000M ~2004 1000 100 10 1 0.1 0.01 0.001 512M 256M 64M 16M 4M Mbit capacity 1M 64K 256K 15K 1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 Hardware Computer Organization for the Software Professional Arnold S. Berger
Abstract view of a computer Hardware Computer Organization for the Software Professional Arnold S. Berger
Abstraction layers Hardware Computer Organization for the Software Professional Arnold S. Berger
Memory hierarchy • There is a hierarchy of memory • In order to maximize processor throughput, the fastest memory is closest to the processor • Also the most expensive • Notice: • The exponential rise in capacity with each layer • The exponential rise in access time in each layer Primary Cache 2K- 1,024K byte (<1ns) CPU Bus Interface Unit Secondary Cache 256K - 4MByte (10ns) Main Memory 1M – 2 Gbyte (30 ns) Hard Disk 40 - 250 GByte ( 100,000 ) ns Tape Backup 50G - 10TByte (seconds) Internet All knowledge/Forever Hardware Computer Organization for the Software Professional Arnold S. Berger
Hard disk drive Hardware Computer Organization for the Software Professional Arnold S. Berger
Representing a number as a voltage • Represent the data value as a voltage or current along a single • electrical conductor (signal trace) or wire 24.56345 RADIO SHACK 24.56345 V Direction of signal • Problems: • Measuring large numbers is difficult, slow and expensive • How do you represent +/- 32,673,102,093? Zero volts (ground) Hardware Computer Organization for the Software Professional Arnold S. Berger
Parallel transmission of 0 to 9 • Represent the data value as a voltage or current along multiple electrical conductors • Let each wire represent one decade of the number • Only need to divide up the voltage on each wire into 10 steps • 0 V to 9 volts • Can have considerable “slop” between values before it causes problems 4.2 RADIO SHACK 2 4 5 6 3 4 5 Zero volts (ground) Hardware Computer Organization for the Software Professional Arnold S. Berger
Binary data transmission • Represent the data value as a voltage or current along multiple, parallel, electrical conductors • Let each wire represent one power of 2 of the number ( 20 through 2N ) • Only need to divide up the voltage on each wire into 2 possible steps • 0 V “no volts” or “some volts” greater than zero (on or off ) • Can have lots of “slop” between values 20 21 22 23 24 25 26 27 28 29 210 211 212 213 214 215 on 1 off 0 on 1 off 0 off 0 on 1 on 1 on 1 off 0 off 0 off 0 on 1 on 1 on 1 on 1 off 0 Hardware Computer Organization for the Software Professional Arnold S. Berger
A simple AND circuit • Digital computers force us to deal with number systems other than decimal • ALL digital computers are collections of switches made from transistors • A switch is ON or OFF • A binary (digital) system lends itself to using electronic on/off switching • Principles of Logic (a branch of Philosophy ) are useful to describe the digital circuits in computers • True/False, 1/0, On/OFF, High/Low all describe the same possible states of a digital system • An electrical circuit, with ordinary switches, is a convenient display on/off switch A B C + C = A and B Battery Symbol - Light bulb (load) Hardware Computer Organization for the Software Professional Arnold S. Berger
Decimal representation • Writing a number is the same in all number systems • Each column of the number represents the base that the number is raised to • Example: 65,536 = 216 10 104 103 102 101 100 6 5 5 3 6 6 x 100 = 6 3 x 101 = 30 • Notice how each column is weighted by the value of the base raised to the power 5 x 102 = 500 5 x 103 = 5000 + 6 x 104 = 60000 = 65536 Hardware Computer Organization for the Software Professional Arnold S. Berger
Binary numbers 1 x 27 = 128 0 x 26 = 0 1 x 25 = 32 0 x 24 = 0 1 x 23 = 8 1 x 22 = 4 0 x 21 = 0 0 x 20 = 0 • Just like decimal numbers, binary numbers are represented as the power of the base: • Example: 10101100 Bases of Hex and Octal B 128 64 32 16 8 4 2 1 27 26 25 24 23 22 21 20 1 0 1 0 1 1 0 0 10101100 = 172 2 10 172 Hardware Computer Organization for the Software Professional Arnold S. Berger
Binary and octal numbers • Let’s look at our example again: • Notice that because 8 = 23 we can easily convert binary to octal • Just group columns of three and treat as binary within a column to get octal number from 0 to 7 82 81 80 4 x 80 = 4 5 x 81 = 40 2 x 82 = 128 128 64 32 16 8 4 2 1 27 26 25 24 23 22 21 20 172 26 (21 20 )23(22 21 20) 20 (22 21 20) 1 0 1 0 1 1 0 0 0 thru 56 0 thru 7 0 thru 192 Hardware Computer Organization for the Software Professional Arnold S. Berger
Binary and hex • Hexadecimal is the same principle as octal • Hexadecimal is the most common number system in computer science • Octal was common with minicomputers but is now a special function counting system • Back to our example: 10 x 16 + 12 x 1 = 172 = AC (Hex) 161 160 128 64 32 16 8 4 2 1 27 26 25 24 23 22 21 20 24(23 22 21 20)20 (23 22 21 20) 1 0 1 0 1 1 0 0 Hardware Computer Organization for the Software Professional Arnold S. Berger
Bits, bytes, nibbles, words, etc. Bit (1) D3 D0 Nibble (4) D7 D0 Byte (8) D15 D0 Word (16) D31 D0 Long (32) D63 D0 Double (64) D127 D0 VLIW (128) Hardware Computer Organization for the Software Professional Arnold S. Berger
A Seven Segment Display using BCD 0101 0100 0011 0010 0001 0000 carry the one 0001 0000 1001 1000 0111 0110 Hardware Computer Organization for the Software Professional Arnold S. Berger