Konsep Organisasi dan p g p g Arsitektur Komputer

79
CS2624 CS2624 - COMPUTER COMPUTER CS2624 CS2624 COMPUTER COMPUTER ORGANIZATION & ARCHITECTURE ORGANIZATION & ARCHITECTURE (COA) (COA) (COA) (COA) Konsep Organisasi dan Konsep Organisasi dan Arsitektur Komputer Arsitektur Komputer Endro Ariyanto (END) – Februari 2011

Transcript of Konsep Organisasi dan p g p g Arsitektur Komputer

CS2624CS2624 -- COMPUTERCOMPUTERCS2624 CS2624 COMPUTER COMPUTER ORGANIZATION & ARCHITECTURE ORGANIZATION & ARCHITECTURE

(COA)(COA)(COA)(COA)

Konsep Organisasi dan Konsep Organisasi dan p gp gArsitektur KomputerArsitektur Komputer

Endro Ariyanto (END) – Februari 2011

Pokok BahasanPokok BahasanP d h l

Pokok BahasanPokok Bahasan• Pendahuluan• Arsitektur dan Organisasi komputer• Arsitektur dan Organisasi komputer• Fungsi komputer• Struktur komputer

12022008 #1

PendahuluanPendahuluanPendahuluanPendahuluanK t i/il COA ‘t ’ b f t• Kapan materi/ilmu COA ‘terasa’ bermanfaat (‘berguna’) ?– Bila anda bekerja di suatu perusahaan dan anda

diminta untuk:Memilih spesifikasi komputer yang akan digunakan

dengan spesifikasi sesuai kebutuhan dan harga kompetitifMembuat program yang akan ditanam di embedded

systemM l k k d b t h d t l h t i t llMelakukan debug terhadap program yang telah terinstall

pada embedded system (sensor mesin, sistem pengapian elektronik EFI, dll)elektronik EFI, dll)

– Bila anda mempelajari pengetahuan yang berhubungan computer science

12022008 #2

berhubungan computer science

COA/Endro Ariyanto/

PendahuluanPendahuluanPendahuluanPendahuluan

?

Apa yang kau Apa yang kau pa ya g aupa ya g auketahui tentang ketahui tentang

komputer ?komputer ?12022008 #3

komputer ?komputer ?

Bagaimana program Bagaimana program di bawah inidi bawah inig p gg p gdieksekusi ?dieksekusi ?

readln(a);readln(a);b := round(pi * sqr(a/4.5));b := round(pi * sqr(a/4.5));if (b<20) or (b>100) thenif (b<20) or (b>100) thenif (b<20) or (b>100) thenif (b<20) or (b>100) then

c := c := --232232llelse else writeln(‘hai!’);writeln(‘hai!’);( );( );

12022008 #4

Pertanyaan berikut harus bisa dijawab Pertanyaan berikut harus bisa dijawab y jy jsesudah kuliah COAsesudah kuliah COA

• Bagaimanakah notasi notasi pada pemrograman• Bagaimanakah notasi-notasi pada pemrograman tingkat tinggi (high level) disimpan secara internaldi dalam komputer dan bagaimana notasi tersebutdi dalam komputer dan bagaimana notasi tersebut dieksekusi ?

• Bagaimana input/output diimplementasikan ?• Bagaimana variable dipresentasikan dan disimpan di

dalam komputer ?• Bagaimana konstanta numerik dipresentasikan

dan disimpan di dalam komputer ?B i k t i l t ik• Bagaimana komputer mengimplementasikan operator aritmatika, logika, dan relasional ?

• Bagaimana komputer mengimplementasikan flow• Bagaimana komputer mengimplementasikan flow control (sequential, branching, iteration) ?

12022008 #5COA/Endro Ariyanto/

Di mana Arsitektur Komputer Di mana Arsitektur Komputer ppberada ? berada ? (1)(1)

12022008 #6

Di mana Arsitektur Komputer Di mana Arsitektur Komputer ppberada ? berada ? (2)(2)

T l t k t il k t ( t i ) d t k ik• Terletak antara ilmu komputer (computer science) dan teknik komputer (engineering)

• Menghubungkan matematika dan fisika melalui pengembangan g g p g gperalatan praktis

• Di atasnya adalah perancangan sistem komputer dan sistem operasi• Di bawahnya adalah perancangan sistem digital dan VLSI• Di bawahnya adalah perancangan sistem digital dan VLSI• Sebagian besar konsep arsitektur komputer telah dikembangkan

sejak lamaSebagian besar pengembangan saat ini terjadi terus menerus• Sebagian besar pengembangan saat ini terjadi terus menerus

• Sebagian besar pengembangan hardware jauh lebih cepat daripada pengembangan software atau konsep arsitektur komputer

• Hukum Moore menyatakan bahwa:– Jumlah transistor di dalam sebuah chip (IC) bertambah 2x lipat setiap

18 bulan– Harga per bit memori turun secara eksponensial– Power per bit turun secara eksponensial, semakin cepat, dan semakin

handal (reliable)

12022008 #7

( )

Hukum MooreHukum Moore (1)(1)Hukum Moore Hukum Moore (1)(1)

#8COA/Endro Ariyanto/20100208

Hukum MooreHukum Moore (2)(2)Hukum Moore Hukum Moore (2)(2)

#9COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (1)(1)

Arsitektur: M fit fit d d t di f tkArsitektur: Menyusun fitur-fitur yang ada agar dapat dimanfaatkan oleh programmer

• Set instruksi (apakah set instruksi itu ?)( p )• Jumlah bit yang digunakan untuk representasi data• Representasi tipe data (integer, character, floating point, dll)• Mekanisme Input/Output (bagaimana komputer berkomunikasi• Mekanisme Input/Output (bagaimana komputer berkomunikasi

dengan dunia ?)• Teknik-teknik pengalamatan memory • Apakah instruksi perkalian sudah ada ?• Contoh: Komputer IBM 360

– Keluarga komputer pertama diluncurkan tahun 1970Keluarga komputer pertama, diluncurkan tahun 1970– Arsitektur logikanya sama, tetapi organisasinya telah berubah secara

drastis• Contoh lain: implementasi x86 pada arsitektur Intel IA-32• Contoh lain: implementasi x86 pada arsitektur Intel IA-32

– Software yang dikompile untuk 386 masih dapat dijalankan pada prosesor yang lebih baru

– 486 586 dan 686 dapat mengeksekusi lebih cepat

#10

– 486, 586, dan 686 dapat mengeksekusi lebih cepat

COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

Organisasi:Organisasi:>Mengorganisir implementasi fitur-fitur;>Berhubungan dengan perancangan fisik komputer (Sinyal kendali,>Berhubungan dengan perancangan fisik komputer (Sinyal kendali, antarmuka, teknologi memori)

• Operasi perkalianApakah dilakukan dengan hardware khusus perkalian atau– Apakah dilakukan dengan hardware khusus perkalian, atau

– Dengan operasi penjumlahan berkali-kali• Jumlah register yang akan digunakan

– Apakah register itu?– Berapa jumlah register di dalam suatu CPU ?

Pentium: 16 register Pentium: 16 register• Floating point unit (FPU)

– Apakah Floating point unit itu ? Mengeksekusi perhitungan floating point di dalam hardware

– CPU komputer desktop apakah yang pertama kali menggunakan FPU ?

12022008 #11

FPU ? Motorola 68040 Intel 486

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#12COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#13COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#14COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#15COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#16COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (2)(2)

#17COA/Endro Ariyanto/20100208

Arsitektur Komputer vsArsitektur Komputer vs. O. Organisasi rganisasi pp ggKomputer Komputer (3)(3)

• Apakah yang dimaksud dengan kecepatan siklus clock• Apakah yang dimaksud dengan kecepatan siklus clock CPU, bus, dan memori ?– Berapakah kecepatan suatu CPU ?Berapakah kecepatan suatu CPU ? G4: 1-1.25 GHz Athlon/Pentium: 1.5-3 GHz/

• Organisasi Memory– Apakah suatu prosesor mempunyai cache memory ?p p p y y– Berapakah kecepatan suatu memori dalam

mentransfer data ?G k kl b / k G G4: 4 instruksi tiap siklus, 4 byte/instruksi, 1 GHz clock

Total data yang ditransfer: 16 GBytes instruksi Total data yang ditransfer: 16 GBytes instruksiper detik dari memori (teknologi saat ini: 5.3 GB/s)

12022008 #18

)

FunFungsi dangsi dan StruStrukkturtur KomputerKomputerFunFungsi dan gsi dan StruStrukkturtur KomputerKomputerStruktur adalah cara komponen berinteraksi dengan• Struktur adalah cara komponen berinteraksi dengan komponen lain

• Fungsi adalah operasi masing masing komponen• Fungsi adalah operasi masing-masing komponen sebagai bagian dari struktur

• Fungsi apa saja yang terdapat di dalam komputer ?• Fungsi apa saja yang terdapat di dalam komputer ?– Data processing

Penjumlahan, pengurangan, konversi terhadap data, dllj , p g g , p ,– Data storage

Penyimpanan data hasil pemrosesanb l d l h d Pengambilan data yang telah disimpan

– Data movement (I/O, komunikasi data, ...) Pergerakan data internal (di dalam komputer) Pergerakan data internal (di dalam komputer) Pergerakan data eksternal (komputer dengan peralatan lain)

– Control

12022008 #19

Pengendalian ke-3 proses di atas

COA/Endro Ariyanto/

FunFungsi Komputergsi Komputer ((11))FunFungsi Komputer gsi Komputer ((11))

12022008 #20COA/Endro Ariyanto/

FunFungsi Komputergsi Komputer ((22))FunFungsi Komputer gsi Komputer ((22))

Perpindahan datad i d i l k dari device luar ke device luar lainnyaMisal:Copy data dari harddisk ke harddisk lainharddisk lain

12022008 #21COA/Endro Ariyanto/

FunFungsi Komputergsi Komputer ((33))FunFungsi Komputer gsi Komputer ((33))

Penyimpanan datadari device luar ke dari device luar ke memori komputer dan sebaliknyadan sebaliknyaMisal:Harddisk ke RAM atauHarddisk ke RAM atau sebaliknya

12022008 #22COA/Endro Ariyanto/

FunFungsi Komputergsi Komputer ((44))FunFungsi Komputer gsi Komputer ((44))

Pemrosesan datadari memori dan m mdisimpan lagi ke memorimemoriMisal:Eksekusi program: ambil dari p gRAM – diproses – taruh lagi di RAM

12022008 #23COA/Endro Ariyanto/

FunFungsi Komputergsi Komputer ((55))FunFungsi Komputer gsi Komputer ((55))

P dPemrosesan datadari memori ke dari memori ke I/O atau

b liksebaliknyaMisal:Membuka file MS Word, Excel, dll dari h dd k fl hd kharddisk atau flashdisk

12022008 #24COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 11StruStrukkturtur KomputerKomputer -- LevelLevel 11K t dilih t b i d i d t• Komputer dilihat sebagai device yang dapat berkomunikasi dengan dunia luar, dapat

i l i d t d imemanipulasi data dan menyimpannya– Sebuah kotak yang dapat terhubung dengan jaringan

(k ik i) d i h l (I/O)(komunikasi) dan peripheral (I/O)– Software: sistem operasi dan program aplikasi– Sistem operasi mengontrol pengoperasian program

aplikasi

12022008 #25COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 22 (1)(1)StruStrukkturtur KomputerKomputer -- LevelLevel 22 (1)(1)

Peripherals Computer

Input/O t t

Peripherals

C t l

p

ComputerComputer

Output CentralProcessing

Unit(CPU)Systems

Interconnection

ComputerComputer (CPU)

Main Memoryy

Communicationlines

12022008 #26COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer -- LevelLevel 22 (2)(2)StruStrukkturtur KomputerKomputer LevelLevel 22 (2)(2)

C t l P i U it (CPU)• Central Processing Unit (CPU):– Mengendalikan kerja komputer, dan pemrosesan

d tdata• Main memory:

– Menyimpan data yang akan atau baru saja diproses

• System interconnection (bus):– Mekanisme komunikasi internal antara CPU, ,

memori, dan I/O• I/O:I/O:

– Memindahkan data antara komputer dengan lingkungan luar

12022008 #27

g g

COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 33 ((11))StruStrukkturtur KomputerKomputer -- LevelLevel 33 ((11))

CPU

ComputerArithmetic

and Logic Unit(ALU)

Internal

(ALU)

ControlUnit

CPU

I/O

SystemBus Floating

CPUIntercon-nection

UnitMemory

us gPointUnit

Registers

12022008 #28COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 33 ((22))StruStrukkturtur KomputerKomputer -- LevelLevel 33 ((22))

A ith ti L i U it (ALU)• Arithmetic Logic Unit (ALU):– Melakukan fungsi pemrosesan data

• Control Unit:Mengontrol kerja CPU mengontrol komputer– Mengontrol kerja CPU mengontrol komputer

• Register:– Menyimpan data internal CPU (Data, Instruksi,

Stack, Integer, Floating Point)

• Floating Point Unit (FPU)• CPU interconnection:• CPU interconnection:

– Mengatur mekanisme komunikasi antara ALU, C l d

12022008 #29

Control Unit, dan RegisterCOA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 44 ((11))StruStrukkturtur KomputerKomputer -- LevelLevel 44 ((11))

Control Unit

CPU S i

Control Unit

CPU SequencingLogic

ControlUnit

ALU

InternalBusFPU

Control Unit Registers and

Decoders

Unit

Registers

usFPU

ControlControlMemory

12022008 #30COA/Endro Ariyanto/

StruStrukkturtur KomputerKomputer LevelLevel 44 ((22))StruStrukkturtur KomputerKomputer -- LevelLevel 44 ((22))

C t l it t di i d i 3 k i t l• Control unit terdiri dari 3 komponen internal:– Sequencing logic

Sequencing logic dan control memory menentukan keluaran dari control unit

– Control unit registers dan decoders– Control memoryy

M t l l• Meta-level– Pemrosesan parallel dan multi-komputer– Pengontrolan proses dilakukan secara tersebar atau

terpusat, tergantung modelnya

12022008 #31

p g g y

COA/Endro Ariyanto/

PustakaPustakaPustakaPustaka[STA03] Stalling, William. 2003. “Computer Organization

and Architecture: Designing for Performance”. 6th edition. Prentice Hall.

[HTT02] http://en.wikipedia.org/wiki/Moore’s_law[ ] p // p g/ / _

12022008 #32COA/Endro Ariyanto/

CS2624CS2624 -- COMPUTERCOMPUTERCS2624 CS2624 COMPUTER COMPUTER ORGANIZATION & ARCHITECTURE ORGANIZATION & ARCHITECTURE (COA)(COA)(COA)(COA)

Chapter 2Evolution of Computers

Evolution of ComputersEvolution of Computers

Mechanical Computers• 1642 - Blaise Pascal invented the first working calculating machine

Kalkulator PascalKalkulator Pascal

Blaise Pascal

12022008 #34COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

Mechanical Computers• 1672 - Leibniz added multiplication and division (First 4-function

l l t )calculator)

LeibnizLeibniz

Kalkulator LeibnizKalkulator Leibniz12022008 #35COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers150 t h k di (1820’ )150 tahun kemudian... (1820’s)• Charles Babbage built the difference engine and then

started work on the analytical enginestarted work on the analytical engine.– The analytical engine had a memory, a computation

unit, and input reader (punched cards) and an output , p (p ) punit (punched and printed output).

– The analytical engine was the First general purpose tcomputer.

– Ada Lovelace worked for him, and was the world’s First computer programmerFirst computer programmer

– Ada, the computer language, is named in her honor– The analytical engine never worked becauseThe analytical engine never worked because

technology at that time could not manufacture the precision gears needed to make it work

– An analytical engine based on Babbage’s design has been built and it works!

36

12022008 #36

Charles BabbageBabbageCharles BabbageBabbage

Babbage's Difference Babbage's Difference EngineEngineAda Lovelace

12022008 #37COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

Babbage's Babbage's Analytical Engine 12022008 #38COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

Babbage's Babbage's Analytical Engine 12022008 #39COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers110 years later (1930’s)110 years later... (1930’s)• John Atanasoff (Iowa State College) and George

Stibbitz (Bell) both built electric calculators

John Atanasoff

Stibbitz (Bell) both built electric calculators• Aiken built an electronic relay version of Babbage’s

machine that worked (Mark I)machine that worked (Mark I)• By the time he built the Mark II, relays were obsolete

(too slow)(too slow).• Alan Turing, famous British mathemetician,

developed COLOSSUS, the First computerdeveloped COLOSSUS, the First computer– Since the British government didn’t unclassify COLOSSUS for

30 years, none of it’s science influenced later computer d l tdevelopment

Th thi t t d tThen things started to move...

12022008 #40COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

Atanasoff-Berry_Computer12022008 #41COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

42Colossus Computer

12022008 #42COA/Endro Ariyanto/

Evolution of ComputersEvolution of ComputersENIAC (Electronic Numerical Integrator And Computer)• Designed at UPenn by Mauchley and Eckert (Mauchley saw Stibbitz

work at Dartmouth)work at Dartmouth)• Purpose was to do calculations for the Army Ballistics Laboratory• 5000 calculations per second (much faster than mechanical

calculators)calculators)• Programs were entered by connecting jumper cables and setting

switches (6000 of them)• The computer weighed 30 tons and used 140kW of power (equivalent

of 233 60W bulbs)• Basic element was the vacuum tubea a a uu ub• Numbers were represented digitally by clusters of 10 vacuum tubes

(one for each digit 0-9)• Design started in 1943 started working in 1946 dissassembled in• Design started in 1943, started working in 1946, dissassembled in

1955• It’s first major task was to help design the H-bomb

12022008 #43

Evolution of ComputersEvolution of Computers

Tube lamp

12022008 #44COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

ENIAC 12022008 #45COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

ENIAC12022008 #46COA/Endro Ariyanto/

Evolution of ComputersEvolution of ComputersThe von Neumann Machine• John von Neumann thought he could improve the

i fprogramming aspect of computers• Put the program in the same place as the data (some

kind of memory element)kind of memory element)– Stored-program concept– Permits more flexibility in programming (self-– Permits more flexibility in programming (self-

modifiable code)– Permits more flexibility in how the memory is used y y

(data v. program)– Creates a bottleneck between the CPU and memory

d i tiduring execution• Turing had the same idea at about the same time

First stored program computer was the EDSAC built– First stored program computer was the EDSAC, built at Univ. of Cambridge (Wilkes)

12022008 #47COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

EDSAC computer 12022008 #48COA/Endro Ariyanto/

Evolution of ComputersEvolution of ComputersTh N M hiThe von Neumann Machine• IAS computer was developed at Princeton and

t t d f ti i i 1952started functioning in 1952.• IAS computer was the basis for all future

computers– Main memory, which stores both data and

i iinstructions– ALU for processing data– Control unit which fetches and executes

instructions– I/O devices to handle input and output.

12022008 #49COA/Endro Ariyanto/

Evolution of ComputersEvolution of Computers

IAS computer 12022008 #50COA/Endro Ariyanto/

Evolution of Computers

Struktur IAS computer 12022008 #51COA/Endro Ariyanto/

Evolution of ComputersIAS computer had 1000 memory locations of 40 bits

Evolution of Computers• IAS computer had 1000 memory locations of 40 bits

each• Each word could hold either one piece of data or two• Each word could hold either one piece of data or two

instructions (20 bits each)– Note: Instruction length is related to the word length in a simpleNote: Instruction length is related to the word length in a simple

way• Instructions consist of an 8-bit opcode and a 12-bit

dd (1024 l ti )address (1024 locations)– Instruction size limits accessible memory

• The IAS functions by fetching instructions from memory• The IAS functions by fetching instructions from memory and executing them one at a time– Since there are two instructions per word, it actually fetches two p , y

instructions at once– The second instruction is held in the IBR: instruction buffer

registerg

12022008 #52

Von NeumannVon NeumannVon NeumannVon Neumann• The control unit and the ALU both contains registers that

can hold data temporarilyM b ff i t [MBR] d t t i• Memory buffer register [MBR] - used to store or receive a word from memory

• Memory address register [MAR] - indicates where in• Memory address register [MAR] indicates where in memory to store or receive a word

• Instruction Register [IR] - contains the current g [ ]instruction

• Instruction Buffer Register [IBR] - holds the right-hand instruction from memory (not always used)instruction from memory (not always used)

• Program Counter [PC] - Indicates the memory address of the next instruction to fetchof the next instruction to fetch

• Accumulator [AC] - holds the result of ALU operators (usually the most significant bits)( y g )

• Multiplier Quotient [MQ] - holds the least significant bits of ALU operators 12022008 #53

Von NeumannVon NeumannVon NeumannVon NeumannF ti f th IAS tFunction of the IAS computer• Instruction cycle:

– Fetch cycle - the op-code of the next instruction is loaded into the the f

y pIR, and the address from the instruction is loaded into the MAR. In the IAS computer this instruction can come from the IBR, or it can be obtained by loading the PC value into the MAR, loading the word from memory into the MBR and then moving the MBR into the IBR IR andmemory into the MBR, and then moving the MBR into the IBR, IR, and MAR.

• Execute cycle - the op-code in the IR now sets particular control signals which cause certain actions to occur: data movement, or data processing bywhich cause certain actions to occur: data movement, or data processing by the ALU. There are 21 instructions, which fall into 5 groups:

• Data transfer - move data between memory and the ALU registers, or between two

• ALU registers.• Unconditional Branch - modify the PC to jump within a program• Conditional Branch - modify the PC based on certain ßags usually from the• Conditional Branch modify the PC based on certain ßags, usually from the

last ALU action• Arithmetic Instructions - ALU operations on data• Address Modify - Allows addresses to be computed in the ALU and then• Address Modify Allows addresses to be computed in the ALU and then

inserted into instructions stored in memory. This allows you to do things like indexed arrays

12022008 #54

Von NeumannVon NeumannVon NeumannVon NeumannTh f t h t l f th b i f th• The fetch-execute cycle forms the basis of the design– The computer itself does nothing except fetch the

next instruction and modify some control signals based on the instruction The resulting data motionbased on the instruction. The resulting data motion executes the program.

– The computer does only what the program it is– The computer does only what the program it is running tells it to do.

• Modern computers still follow many of these basic d i l t b t h ldesign elements, but are much more complex because they try to use parallelism and execute multiple instructions simultaneouslymultiple instructions simultaneously.

12022008 #55

Computer History: Pre transistor phaseComputer History: Pre-transistor phase

Sperry (went on to become Unisys)become Unisys)

• Formed by Eckert and Mauchly inand Mauchly in 1947UNIVAC I S• UNIVAC I - Sperry-Rand Corporation, th Fi t f lthe First successful commercial

( lcomputer (early 50’s)

UNIVAC I– Used for the 1950 census

UNIVAC-I

12022008 #56COA/Endro Ariyanto/

Computer History: Pre transistor phaseComputer History: Pre-transistor phase

• UNIVAC II– First upgrade:First upgrade:

greater memory capacity & higher p y gperformance

– First upward pcompatible machine

UNIVAC IIUNIVAC-II

12022008 #57COA/Endro Ariyanto/

Computer History: Pre transistor phaseComputer History: Pre-transistor phase

• UNIVAC 1100 Series - The mostSeries The most successful UNIVAC seriesUNIVAC series, mostly designed for scientificfor scientific applications

UNIVAC 1100UNIVAC-1100

12022008 #58COA/Endro Ariyanto/

Computer History: Post transistorComputer History: Post-transistorIBMIBM• IBM 701 - 1952 (it sold nineteen 701 computers)• IBM 702 - 1955 First business computer (text processing)• IBM 702 1955 First business computer (text processing)Commercial Computers (Post-transistor)• Transistors were developed at Bell labs in 1947p• NCR & RCA had small transistor computers before IBM (MIT first in

1954 with TX-0)• IBM started its 7000 series using transistors in the late 1950’s• IBM started its 7000 series using transistors in the late 1950 s

– Multiplexor bus design, I/O Channel concept• Transistors allowed for greater speed, larger memory capacity, and

smaller sizesmaller size• Second generation of computers began:

– High-level programming languages (FORTRAN), and system software– More complex ALUs and control units

• DEC began building minicomputers (first PDP-1 sold for $120k in1959)in1959)– Large screen led to the Þrst video game at MIT: SpaceWar

12022008 #59

Computer History: Post transistorComputer History: Post-transistor

PDP-112022008 #60COA/Endro Ariyanto/

Computer History: Third GenerationComputer History: Third GenerationThi d G ti C tThird Generation Computers• 1958: Integrated circuit: you could put transistors and other circuit

devices on a single chip.g p• Old technology:

– each transistor was the size of a pin head,– each resistor capacitor etc had to be soldered on the boardeach resistor, capacitor, etc. had to be soldered on the board

individually– up to a several 100,000 components to the more advanced computers

12022008 #61COA/Endro Ariyanto/

Computer History: Third GenerationComputer History: Third Generation

Third Generation Computers• Integrated circuits

O f ( ll b t 4’ i di t lth h th ’ tti– One wafer (usually about 4’ in diameter, although they’re getting bigger)

– One pattern: i.e. a CPU, or a quad NAND gate, etc..p q g– Repeat the pattern in 2D across the chip– Saw the chip into the little blocks

Put each block in a little plastic case with some pins attached– Put each block in a little plastic case with some pins attached– As feature size gets smaller, a linear decrease in feature size in x

and y is a squared increase in the number of components per wafer (wafer cost is the relevant thing)wafer (wafer cost is the relevant thing)

• Current achievements are greater than 60 million transistors in a single chiptransistors in a single chip

12022008 #62

Computer History: Third GenerationComputer History: Third Generation

Integrated gcircuits

12022008 #63COA/Endro Ariyanto/

Computer History: Third GenerationComputer History: Third Generation

• IBM System 360 (introduced in 1964)– First non-upward compatible line, but they wanted

i h hi f h 000 ito improve the architecture of the 7000 series, and it turned out to be the success of the decade, giving them a 70% market sharegiving them a 70% market share. This was IBM’s major move to computers based on

integrated circuitsTh 360 hit t i till th b i f t f– The 360 architecture is still the basis for most of IBM’s large computers.

– The 360 series was the Þrst planned family of– The 360 series was the Þrst planned family of machines, with different capabilities for different prices.

– 360 was the Þfirst multi-tasking architecture with multiple programs stored in memory

12022008 #64

Computer History: Third GenerationComputer History: Third Generation

IBM System 360 12022008 #65COA/Endro Ariyanto/

Computer History: Third GenerationComputer History: Third Generation

• DEC PDP-8– Small enough to sit on a lab bench or be built into

h iother equipment– It was cheap enough for a lab to purchase ($18k).

PDP 8 follo ed b the PDP 11 e e DEC’s glo ea s PDP-8, followed by the PDP-11, were DEC’s glory years.

• PDP series was the first to use a bus architecturearchitecture.

12022008 #66

Computer History: Third GenerationComputer History: Third Generation

PDP 8PDP-812022008 #67COA/Endro Ariyanto/

Computer History: Third GenerationComputer History: Third Generation

PDP-812022008 #68COA/Endro Ariyanto/

Computer Historyp y

MMemory• Pre-1970: all memory consisted of metalPre 1970: all memory consisted of metal

rings (cores) that could each hold one bit• 1970 first semiconductor memory of a• 1970 - first semiconductor memory of a

decent size (256 bits)1974 i d t b• 1974 - semiconductor memory became cheaper than core memory (magnetic circles)

• Since 1970 - 11 generations: 256, 1K, 4K, 16K, 256K, 1M, 4M, 16M, 64M, 256M, 512M16K, 256K, 1M, 4M, 16M, 64M, 256M, 512M

• 1 Gbit memories are close to production

12022008 #69

Computer Historyp y

Core memory

12022008 #70COA/Endro Ariyanto/

Computer Historyp y

S i d tSemiconductor memory

12022008 #71COA/Endro Ariyanto/

Computer Historyp y

• Microprocessors• First microprocessor

h 00 hi hwas the 4004, which was built by an Intel engineer as the chip toengineer as the chip to run a calculator for a Japanese firm (he did it on one chip to beit on one chip to be more efficient than the 12 requested).q )– Intel bought back the

rights to the chip and came out with the 8008came out with the 8008 a few months later

– Interest in the chip boomedboomed

12022008 #72COA/Endro Ariyanto/

Computer Historyp y

• Microprocessors• 1974 - Intel 8080, the Þrst general purpose microprocessor, followed by

the 8088 and the 8086the 8088 and the 8086

I t lIntel 8086

Intel 738080 Intel 8088

12022008 #73COA/Endro Ariyanto/

Computer Historyp y

• Microprocessors• 1975 - Wozniak and Jobs design the Apple I using the g pp g

Morotola 6502 microprocessor• 1977 - Apple II with all the trimmings• 1985 - Intel 80386, their Þrst 32-bit processor (HP, Bell

Labs, and Motorola already had one)• 1990 Intel 80486 and Motorola 68040 have the first on• 1990 - Intel 80486 and Motorola 68040 have the first on-

board float point units [FPU]

12022008 #74

Computer HistoryComputer History

Current Technology in Microprocessors• Pentium, PowerPC, Sparc

– Branch prediction - figuring out where to get instructions from nextD t Fl A l i tti d t i t th CPU b f– Data Flow Analysis - getting data into the CPU before it needs it

– Speculative Execution - executing instructions that– Speculative Execution - executing instructions that may be needed later

– On-chip floating point units, very complex control p g p , y punits

– Pipline architectures - dividing the F-E cycle into small t d ti th t i ll lparts and executing the parts inparallel

– Superscalar design - having multiple functional units operating in paralleloperating in parallel

12022008 #75

Computer HistoryComputer HistoryTh b ttl k i th d fThe bottle-neck is memory: the processors are an order of

magnitude (or more) faster than the• DRAM:• DRAM:

– Increase the amount of memory grabbed at any one time

– Use cache and buffering systems– Increase bandwidth between processors and memory, p y,

and use higher-speed buses P4 uses a 400 MHz memory bus technology called

RAMBUSRAMBUS RAMBUS has strict requirements about how close

to the processor the memory must be (light takesto the processor the memory must be (light takes a nanosecond to travel 1 foot)

12022008 #76

Computer HistoryComputer HistoryR t d l t i CARecent developments in CA• Copper wire (IBM development): up to an order of

magnitude faster than aluminummagnitude faster than aluminum• Parallel pipelines (Itanium)• Direct support for multimedia applications (Pentium• Direct support for multimedia applications (Pentium

II/MMX, Athlon 3DNow, Pentium 4)• 64-bit architectures (Itanium, PowerPC 620, UltraSparc, ( , , p ,

G3/G4)• Speculative execution on a global scale

l l h h ( /• 2-level cache on the processor (PowerPC G3/G4, Pentium III, Itanium)

• Vector floating point processors (G4)• Vector floating point processors (G4)• Magnetic memory (MRAM) that is as fast as DRAM• Chips with 0 11um features (110nm) are about to come• Chips with 0.11um features (110nm) are about to come

into production12022008 #77

PustakaPustakaPustakaPustaka[MAX01] M ll B A “P i i l f C t[MAX01] Maxwell, Bruce A. “Principles of Computer

Architecture”. – edition. Swarthmore College.

12022008 #78