Tugas Paper Superscallar

21
 i KATA PENGANTAR Puji syukur saya panjatkan kepada Tuhan yang telah melimpahkan rahmat dan hidayah-Nya sehingga saya dapat menyelesaikan tugas menyusun paper dengan judul “Prosesor Su pe r Scallar” dan ini dis es ua ika n dengan tujua nny a un tuk me nu nja ng  perkul iahan dalam mata kuliah Organis asi Komputer II serta memenuhi tugas yang telah diberikan. Perkenankan bersama ini sa ya mengucapkan terima kasih yang sebesar-besarnya kepada dosen, yang selama ini telah membantu saya. Semoga Tuhan memberikan balasan yang sepadan atas budi baik yang selama ini diberikan. Mas ih ban yak ket idak sempur naan pad a pen ulis an pape r ini, bai k isi mau pun redaks inya, Akhir kata, diharapkan laporan ini dapat bermanfaat bagi siapa saja yang membutuhkannya. 1

Transcript of Tugas Paper Superscallar

Page 1: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 1/21

i

KATA PENGANTAR 

Puji syukur saya panjatkan kepada Tuhan yang telah melimpahkan rahmat

dan hidayah-Nya sehingga saya dapat menyelesaikan tugas menyusun paper dengan judul

“Prosesor Super Scallar” dan ini disesuaikan dengan tujuannya untuk menunjang

 perkuliahan dalam mata kuliah Organisasi Komputer II serta memenuhi tugas yang telah

diberikan.

Perkenankan bersama ini saya mengucapkan terima kasih yang sebesar-besarnya

kepada dosen, yang selama ini telah membantu saya. Semoga Tuhan memberikan balasan

yang sepadan atas budi baik yang selama ini diberikan.

Masih banyak ketidaksempurnaan pada penulisan paper ini, baik isi maupun

redaksinya, Akhir kata, diharapkan laporan ini dapat bermanfaat bagi siapa saja yang

membutuhkannya.

1

Page 2: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 2/21

ii

PENDAHULUAN

I. PERKEMBANGAN PROCESOR 

Processor sering disebut sebagai otak dan pusat pengendali computer yang

didukung oleh komponen lainnya. Processor adalah sebuah IC yang mengontrol

keseluruhan jalannya sebuah sistem komputer dan digunakan sebagai pusat atau otak dari

komputer yang berfungsi untuk melakukan perhitungan dan menjalankan tugas. Processor 

terletak pada socket yang telah disediakan oleh motherboard, dan dapat diganti dengan

 processor yang lain asalkan sesuai dengan socket yang ada pada motherboard. Salah satu

yang sangat besar pengaruhnya terhadap kecepatan komputer tergantung dari jenis dankapasitas processor.

Prosesor adalah chip yang sering disebut “Microprosessor” yang sekarang ukurannya

sudah mencapai Gigahertz (GHz). Ukuran tersebut adalah hitungan kecepatan prosesor 

dalam mengolah data atau informasi. Merk prosesor yang banyak beredar dipasatan

adalah AMD, Apple, Cyrix VIA, IBM, IDT, dan Intel.

Bagian dari Prosesor Bagian terpenting dari prosesor terbagi 3 yaitu :

Aritcmatics Logical Unit (ALU)

Control Unit (CU)

Memory Unit (MU)

 II. SEJARAH PERKEMBANGAN PROCESSOR 

1) Microprocessor 4004 (1971)

Pada tahun 1971 munculah microprocessor pertama Intel , microprocessor 4004 ini

digunakan pada mesin kalkulator Busicom. Dengan penemuan ini maka terbukalah jalan

untuk memasukkan kecerdasan buatan pada benda mati.

2) Microprocessor 8008 (1972)

Pada tahun 1972 intel mengeluarkan microprocessor 8008 yang berkecepatan hitung 2

kali lipat dari MP sebelumnya. MP ini adalah mp 8 bit pertama. Mp ini juga di desain

untuk mengerjakan satu pekerjaan saja.

3) Microprocessor 8080 (1974)

Pada tahun 1974 intel kembali mengeluarkan mp terbaru dengan seri 8080. Pada seri ini

intel melakukan perubahan dari mp multivoltage menjadi triple voltage, teknologi yang di

 pakai NMOS, lebih cepat dari seri sebelumnya yang memakai teknologi PMOS. Mp ini

adalah otak pertama bagi komputer yang bernama altair.Pada saat ini pengalamatan

2

Page 3: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 3/21

memory sudah sampai 64 kilobyte. Kecepatanya sampai 10X mp sebelumnya.

4) Microprocessor 8086 (1978)

Processor 8086 adalah cpu pertama 16 bit. Perusahan komputer IBM menggunakan

 processor 8086sx ini untuk komputernya karena lebih murah dari harga 8086, dan juga

 bisa menggunakan mainboard bekas dari processor 8080. Teknologi yang di gunakan

 pada processor ini juga berbeda dari seri 8080, dimana pada seri 8086 dan 8086sx intel

menggunakan teknologi HMOS.

5) Microprocessor 286 (1982)

Intel 286 atau 80286 adalah sebuah processor yang pertama kali dapat mengenali dan

menggunakan software yang digunakan untuk processor sebelumnya.

286 (1982) juga merupakan prosessor 16 bit.Prosessor ini mempunyai kemajuan yang

relatif besar dibanding chip-chip generasi pertama.Frekuensi clock ditingkatkan, tetapi

 perbaikan yang utama ialah optimasi penanganan perintah.

6) Processor 80386 DX (1985)

80386 merupakan CPU 32 bit pertama. Prosessor ini dapat mengalamati memori hingga 4

GB dan mempunyai cara pengalamatan yang lebih baik daripada 286. 386 bekerja pada

kecepatan clock 16,20 dan 33 MHz. Belakangan Cyrix dan AMD membuat clones/tiruan-

tiruan yang bekerja pada 40 MHz. 386 mengenalkan mode kerja baru yaitu virtual 8086

yang terbuka untuk multitasking karena CPU dapat membuat beberapa 8086 virtual di

tiap lokasi memorinya sendiri-sendiri.

7) Processor 80486 DX (1989)

80486 dikeluarkan 10 April 1989 dan bekerja dua kali lebih cepat dari pendahulunya. Hal

ini dapat terjadi karena penanganan perintah-perintah x86 yang lebih cepat, lebih-lebih

 pada mode RISC. Pada saat yang sama kecepatan bus dinaikkan, tetapi 386DX dan

486DX merupakan chip 32 bit. Sesuatu yang baru dalam 486 ialah menjadikan satu math

coprocessor/prosesor pembantu matematis.

8) Processor Cyrix 486SLC (1992)

Cyrix dan Texas Instruments telah membuat serangkaian chip 486SLC. Chip-chip

tersebut menggunakan kumpulan perintah yang sama seperti 486DX, dan bekerja secara

internal 32 bit seperti DX. Tetapi secara eksternal bekerja hanya pada 16 bit (seperti

386SX). Oleh karena itu, chip-chip tersebut hanya menangani RAM 16 MB. Lagipula,

hanya mempunyai cache internal 1 KB dan tidak ada mathematical co-processor.

Sesungguhnya chip-chip tersebut hanya merupakan perbaikan 286/386SX.

9) Processor IBM 486SLC2 (1992)

IBM mempunyai chip 486 buatan sendiri. Serangkaian chip tersebut diberi nama LC2 dan

SLC3. Yang terakhir dikenal sebagai Blue Lightning. Chip-chip ini dapat dibandingkandengan 486SX Intel, karena tidak mempunyai mathematical coprocessor yang menjadi

3

Page 4: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 4/21

satu. Tetapi mempunyai cache internal 16 KB. SLC2 bekerja pada 25/50 MHz secara

eksternal dan internal, sedangkan chip SLC3 bekerja pada 25/75 dan 33/100 MHz. IBM

membuat chip-chip ini untuk PC mereka sendiri dengan fasilitas mereka sendiri,

melesensi logiknya dari Intel.

10) Pentium Classic (P54C) (1993)

• Chip ini dikembangkan oleh Intel dan dikeluarkan pada 22 Maret 1993

• Pentium merupakan super scalar, yang berarti prosessor ini dapat menjalankan lebih dari

satu perintah tiap tik clock. Prosessor ini menangani dua perintah tiap tik, sebanding

dengan dua buah 486 dalam satu chip. Terdapat perubahan yang besar dalam bus sistem :

lebarnya lipat dua menjadi 64 bit dan kecepatannya meningkat menjadi 60 atau 66 MHz.

• Sejak itu, Intel memproduksi dua macam Pentium yang bekerja pada sistem bus 60 MHz

(P90, P120, P150, dan P180) dan sisanya, bekerja pada 66 MHz(P100, P133,P166, dan

P200).

11) AMD (Advanced Micro Devices) (1999)

• Pentium-pentium AMD seperti chip-chip yang ditawarkan oleh Intel bersaing dengan

ketat. AMD menggunakan teknologi- teknologi mereka sendiri. Oleh karena itu,

 prosesornya bukan merupakan clone-clone.

• AMD mempunyai seri sebagai berikut :

K5, dapat disamakan dengan Pentium-pentium Classic (dengan cache L1 16 KB dan

tanpa MMX)

K6, K6-2, dan K6-3 bersaing dengan Pentium MMX dan Pentium II.K7 Athlon, Agustus 1999, tidak kompatibel dengan Socket 7

12) AMD K5 (1996)

• K5 merupakan tiruan Pentium

• K5 AMD juga ada yang PR166. Chip ini dimaksudkan untuk bersaing dengan P166

Intel. Bekerja hanya pada 116.6 MHz (1.75 x 66 MHz) secara internal. Hal ini

dikarenakan cache yang dioptimasi dan perkembangan-perkembangan baru lainnya• Hanya ada fitur yang tidak sesuai dengan P166 yaitu dalam kerja floating-point

• PR133 dan PR166 berharga jauh lebih murah dari jenis Pentium yang sebanding, dan

 prosessor ini sangat terkenal pada mesin-mesin dengan harga yang murah

13) IDT Winchip

IDT merupakan perusahaan yang lebih kecil yang menghasilkan CPU seperti Pentium

MMX dengan harga murah. WinChip C6 pertama IDT diperkenalkan pada Mei 1997.

14) AMD K6 (1997)4

Page 5: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 5/21

• K6 AMD diluncurkan 2 April 1997 . Chip ini berunjuk kerja sedikit lebih baik dari

 pentium MMX. Oleh karena itu termasuk dalam keluarga P6

• -, Dilengkapi dengan 32+32 KB cache L1 dan MMX -, Berisi 8.8 juta transistor 

• K6 seperti halnya K5 kompatibel dengan Pentium. Maka, dapat diletakkan di Socket 7,

 pada motherboard Pentium umumnya, dan ini segera membuat K6 menjadi sangat

terkenal

15) Cyrix 6×86MX (MII) (1997)

Cyrix mempunyai chip dengan unjuk kerja tinggi, berada diantara generasi ke- 5 dan ke-

6. Jenis pertama didudukkan melawan chip Pentium MMX dari Intel

• Jenis berikutnya dapat dibandingkan dengan K6. Prosessor kelompok P6 yang powerful

dari Cyrix diumumkan sebagai “M2”. Diperkenalkan pada 30 Mei 1997 namanya menjadi

6×86MX. Kemudian diberi nama MII. Chip 6×86MX ini kompatibel dengan Pnetium

MMX dan dipasangkan pada motherboard Socket 7 biasa, 6×86MX mempunyai 64 KB

cache L1 internal. Cyrix juga memanfaatkan teknologi yang tidak ditemukan di dalam

Pentium MMX

• 6X86MX secara khusus dibandingkan dengan CPU generasi ke-6 lainnya (Pentium II

dan Pro dan K6) karena tidak bekerja berdasar kernel RISC. 6X86MX menjalankan

 perintah CISC asli seperti Pentium MMX

• 6X86MX mempunyai – seperti semua prosessor dary Cyrix – masalah yang

 berhubungan dengan unit FPU. Tetapi, jika hanya digunakan untuk aplikasi standart, hal

ini bukan masalah. Masalah akan muncul jika memainkan game 3D. 6×86MX chip yang

cukup powerful. Tetapi chip-chip ini tidak punya FPU dan MMX yang berunjuk kerja baik. Chip-chip ini tidak memasukkan teknologi 3DNow!

• Kecepatan Internal dan Eksternal 6×86MX

16) AMD K6-2 (1998)

• Versi “model 8” berikutnya K6 mempunyai nama sandi “Chomper”

• Prosessor ini pada 28 Mei 1998 dipasarkan sebagai K6-2, dan seperti versi model 7 K6

yang asli, dibuat dengan teknologi 0.25 mikron. Chip-chip ini bekerja hanya dengan 2.2

voltage. Chip ini berhasil menjadi saingan Pentium II Intel

• K6-2 dibuat untuk bus front side (bus sistem) pada kecepatan 100 MHz dan

motherboard Super 7. AMD membuat perusahaan lain seperti Via dan Alladin, membuat

chip set baru untuk motherboard Socket 7 tradisional, setelah Intel tahun 1997

menghentikan platform tersebut

17) Pentium Pro (1995)

Pengembangan Pentium Pro dimulai 1991, di Oregon. Diperkenalkan pada 1 November,

1995 . Pentium Pro merupakan prosessor RISC murni, dioptimasi untuk pemrosesan 32

 bit pada Windows NT atau OS/2. Fitur yang baru ialah bahwa cache L2 yang menjadi

satu Chip raksasa, dengan chip empat persegi panjang dan Socket-8nya. Unit CPU dancache L2 merupakan unit yang terpisah di dalam chip ini.

5

Page 6: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 6/21

18) Pentium II (1997)

Pentium processor II merupakan processor yang menggabungkan intel MMX yang

dirancang secara khusus untuk mengolah data video, audio, dan grafik secara efisien.

Terdapat 7,5 juta transistor terintegrasi di dalamnya sehingga dengan processor ini

 pengguna PC dapat mengolah berbagai data dan menggunakan internet dengan lebih baik 

• Diperkenalkan 7 Mei 1997, Pentium II mempunyai fitur- fitur 

• CPU diletakkan bersama dengan 512 KB L2 di dalam sebuah modul SECC (Single

Edge Contact Cartridge)

• Terhubung dengan motherboard menggunakan penghubung/konektor slot one dan bus

P6 GTL+

19) Pentium-II Celeron A : Mendocino (1995)

Bagian yang menarik dari cartridge baru dengan 128 KB cache L2 di dalam CPU. Hal ini

memberikan unjuk kerja yang sangat baik, karena cache L2 bekerja pada kecepatan CPU

 penuh. Celeron 300A merupakan sebuah chip dalam kartu

20) Pentium-II Xeon (1998)

• Pada 26 Juli 1998 Intel mengenalkan cartridge Pentium II baru yang diberi nama Xeon.

Ditujukan untuk server dan pemakai high-end

• Xeon merupakan Pentium II dengan cartridge baru yang sesuai konektor baru yang

disebut Slot two

21) Pentium III – Katmai (1999)

• Maret 1999 Intel mengenalkan kumpulan MMX2 baru yang ditingkatkan untuk perintah

grafis. Perintah ini disebut Katmai New Instructions (KNI) atau SSE. Perintah ini

ditujukan untuk meningkatkan unjuk kerja game 3D – seperti teknologi 3DNow! AMD.

Katmai memasukkan “double precision floating-point single instruction multiple

data”/”floating point dengan ketelitian ganda satu perintah banyak data” (DPFS SIMD

untuk singkatnya) yang bekerja dalam delapan register 128 bit

• KNI diperkenalkan pada Pentium III 500 MHz baru. Prosessor ini sangat mirip dengan

Pentium II. Menggunakan Slot 1

22) AMD K-7 Athlon (1999)

• Processor AMD utama yang sangat menggemparkan Athlon (K7) diperkenalkan

Agustus 1999.

• -, Seperti pada Pentium II , yang rancangannya sepenuhnya milik AMD. Socket tersebut

disebut Slot A -. Kecepatan clock 600 MHz merupakan versi pertama -, Cache L2

mencapai 8 MB (minimum 512 KB, tanpa tambahan TAG-RAM) -, Cache L1 128 KB -,

Berisi 22 juta transistor (Pentium III mempunyai 9.3 juta) -, Bus jenis baru -, Jenis bus

sistem yang benar-benar baru, yang pada versi pertama akan bekerja pada 200 MHz.

Kecepatan RAM 200

6

Page 7: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 7/21

23) Xeon Pentium III Processor (1999)

• Merupakan processor yang dapat diskalakan (multiprocessor) sebanyak 2, 4, 8 atau lebih

dan didesain secara khusus untuk mid-range dan server/workstations yang lebih tinggi

tingkatannya

• Processor ini memiliki fitur :

Sesuai untuk high end workstations atau high end servers

Kecepatan berkisar dari 500 sampai 550MHz (di tahun 1999)

Mendukung penskalaan multiprocessor 

Memiliki processor serial number 

32KB (16KB data /16KB instruction) nonblocking, L1 cache

512Kbytes L2 cache

24) Intel® Pentium® 4 Processor (2000)• Processor Pentium IV merupakan produk Intel yang kecepatan prosesnya mampu

menembus kecepatan hingga 3.06 GHz. Pertama kali keluar processor ini berkecepatan

1.5GHz dengan formafactor pin 423, setelah itu intel merubah formfactor processor Intel

Pentium 4 menjadi pin 478 yang dimulai dari processor Intel Pentium 4 berkecepatan 1.3

GHz sampai yang terbaru yang saat ini mampu menembus kecepatannya hingga 3.4 GHz

25) Intel® Xeon® Processor (2001)

Processor Intel Pentium 4 Xeon merupakan processor Intel Pentium 4 yang ditujukan

khusus untuk berperan sebagai computer server. Processor ini memiliki jumlah pin lebih

 banyak dari processor Intel Pentium 4 serta dengan memory L2 cache yang lebih besar 

 pula

26) Intel® Itanium® Processor (2001)

• Itanium adalah processor pertama berbasis 64 bit yang ditujukan bagi pemakaian pada

server dan workstation serta pemakai tertentu. Processor ini sudah dibuat dengan struktur 

yang benar-benar berbeda dari sebelumnya yang didasarkan pada desain dan teknologi

Intel’s Explicitly Parallel Instruction Computing ( EPIC )

27) Intel® Itanium® 2 Processor (2002)Itanium 2 adalah generasi kedua dari keluarga Itanium.

28) Intel® Pentium® M Processor (2003)

• Chipset 855, dan Intel® PRO/WIRELESS 2100 adalah komponen dari Intel®

Centrino™. Intel Centrino dibuat untuk memenuhi kebutuhan pasar akan keberadaan

sebuah komputer yang mudah dibawa kemana-mana

29) Intel Pentium M 735/745/755 processors (2004)

• Dilengkapi dengan chipset 855 dengan fitur baru 2Mb L2 Cache 400MHz system bus

dan kecocokan dengan soket processor dengan seri-seri Pentium M sebelumnya

7

Page 8: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 8/21

30) Intel E7520/E7320 Chipsets (2004)

• 7320/7520 dapat digunakan untuk dual processor dengan konfigurasi 800MHz FSB,

DDR2 400 memory, and PCI Express peripheral interfaces

31) Intel Pentium 4 Extreme Edition 3.73GHz (2005)

• Sebuah processor yang ditujukan untuk pasar pengguna komputer yang menginginkan

sesuatu yang lebih dari komputernya, processor ini menggunakan konfigurasi 3.73GHz

frequency, 1.066GHz FSB, EM64T, 2MB L2 cache, dan HyperThreading.

32) Intel Pentium D 820/830/840 (2005)

Processor berbasis 64 bit dan disebut dual core karena menggunakan 2 buah inti, dengan

konfigurasi 1MB L2 cache pada tiap core, 800MHz FSB, dan bisa beroperasi pada

frekuensi 2.8GHz, 3.0GHz, dan 3.2GHz. Pada processor jenis ini juga disertakan

dukungan Hyper Threading.

33) Intel Quad-core Xeon X3210/X3220 (2006)

Processor yang digunakan untuk tipe server dan memiliki 2 buah core dengan masing-

masing memiliki konfigurasi 2.13 dan 2.4GHz, berturut-turut , dengan 8MB L2 cache

( dapat mencapai 4MB yang diakses untuk tiap core ), 1.06GHz Front-side bus, dan

thermal design power.

34) Intel Dual-Core (2005) procesor jenis ini bekerja dengan dua inti processor di dalam satu processor. Setiap inti ini

kecepatannya sama dengan processor sebelumnya, akan tetapi semua proses hitungan

dibagi kepada dua inti tersebut, sehingga proses hitungan jadi lebih cepat.

35) Intel Core 2 Duo (2006)

Sistem pengoperasiannya sama seperti Intel Dual Core, akan tetapi letak perbedaannya

adalah di jumlah transistornya. Hal inilah yang menjadikan Intel Core 2 Duo lebih cepat

dibandingkan dengan Intel Dual Core.

36) Intel Core 2 Extreme Quad Core (9300) (2008)

Core 2 Extreme QX9300 processor dengan fitur 45W TDP dan memberikan perhatian

khusus pada sisi pendingin atau cooling system. The New Intel Core 2 Extreme QX9300

ini memiliki Core clock set pada 2.53GHz dan mengusung FSB atau Front Side Bus

sebesar 1066 serta memiliki cache memory sebesar 12MB.

37) Intel Core i7 965 Extreme Edition (2009)Core i7 merupakan processor pertama yang dirilis Intel dengan basis Intel Nehalem

8

Page 9: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 9/21

didalamnya, yang disusun dengan teknologi 45-nanometer process, chip ini berbeda

dengan kebanyakan chip Intel lainnya, karena chip ini mempunyai kemampuan

mengkontrol dan mempercepat koneksi antara prosessor dan main memory. Dalam hal

 performa tentunya lebih tinggi dan lebih efisien dalam penggunaan energi dengan

 processor seri sebelumnya.

38) Intel Core i9 (2010)

Dari segi performa akan jauh lebih baik dan dapat mengoptimalkan apa yang belum

optimal di Core i7.

39) Intel Sandy Bridge (2011)

Lagi-lagi tahun 2011 satu lagi teknologi yang akan memberikan perubahan besar pada

dunia teknologi khususnya dunia komputer atau PC yaitu pada hardware atau perangkat

keras, baru-baru ini di kabarkan bahwa Intel menegaskan perusahaannya akan

meluncurkan prosesor berkode nama Sandy Bridge di Consumer Electronics Show pada 5

Januari 2011 . Menurut undangan yang beredar, Manager Intel PC Client Grup Mooly

Eden akan memamerkan prosesor baru tersebut sebagai prosesor tercepat di dunia di CES.

Prosesor baru ini diharapkan dapat menggantikan Nehalem yang saat ini digunakan di

Apple iMac Core i7 serta i5 dan MacBook Pro.

III. PENGERTIAN SUPERSCALLAR 

Prosesor Superskalar

Superscalar adalah sebuah unitprocessor yang dapat mengeksekusi dua atau lebih

operasi scalar dalm bentuk paralel. Superscalar merupakan salah satu rancangan untuk 

meningkatkan kecepatan CPU.

Prosesor Superskalar adalah istilah bagi prosesor yang mampu melakukan

 banyak instruksi setiap siklusnya, dengan menggunakan sebuah teknik yang disebut

dengan pipelining .

Misalkan, instruksi yang akan menambahkan isi register R1 dan

R2 dan menempatkan jumlahnya dalam register R3. Isi dari register R1 dan R2 mula-

mula akan ditransfer ke Unit Aritmatika dan Logika. Setelah operasi penambahan

dilakukan, hasil penjumlahan tersebut akan ditransfer ke register R3. Prosesor dapat

membaca instruksi selanjutnya dari memori, sementara operasi penambahan dilakukan.

Kemudian jika instruksi tersebut juga menggunakan ALU, operand-nya dapat ditransfer 

ke input ALU pada waktu yang sama dengan hasil instruksi Add ditransfer ke register R3.

9

Page 10: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 10/21

Pada kasus ideal, jika semua instruksi ditumpuk ke derajat yang maksimum yang

mungkin dilakukan, maka eksekusi dilanjutnkan pada kecepatan penyelesaian satu

instruksi dalam tiap siklus detak prosesor. Instruksi individual, mungkin masih

memerlukan beberapa siklus detak agar selesai dilakukan. Tetapi untuk tujuan

 perhitungan, prosesor superskalar umumnya mampu melakukannya dalam tiap siklus.

Kebanyakan dari komputer saat ini menggunakan mekanisme superscalar ini.

Standar pipeline yang digunakan adalah untuk pengolahan bilangan matematika integer 

(bilangan bulat, bilangan yang tidak memiliki pecahan), kebanyakan CPU juga memiliki

kemampuan untuk pengolahan untuk data floating point (bilangan berkoma). Pipeline

yang mengolah integer dapat juga digunakan untuk mengolah data bertipe floating point

ini, namun untuk aplikasi tertentu, terutama untuk aplikasi keperluan ilmiah CPU yang

memiliki kemampuan pengolahan floating point dapat meningkatkan kecepatan prosesnya

secara dramatis.

Prosesor superskalar umumnya menggunakan beberapa unit fungsional,menciptakan jalur paralel di mana berbagai instruksi yang berbeda dapat dieksekusi

secara paralel. Dengan pengaturan tersebut, maka dimungkinkan untuk memulai eksekusi

 beberapa instruksi secara paralel tiap siklus detak. Tentu saja, eksekusi paralel harus

mempertahankan kebenaran logikan program, sehingga hasil yang diperoleh harus sama

dengan hasil dari eksekusi secara serial. Prosesor Intel x86 yang menggunakan arsitektur 

superskalar adalah keluarga Intel Pentium, Intel Pentium Pro, Intel Pentium II, Intel

Pentium III, Intel Itanium, Intel Xeon, Intel Pentium 4, Intel Pentium M, Intel Core dari

Intel Corporation; keluarga AMD K5, AMD K6, AMD Athlon, AMD Athlon 64, dan

AMD Opteron.

Prosesor super scalar out-of-order x86 seperti PII da PII juga memiliki multiple

fungsional unit yang dapat mengoperasikan banyak operasi secara paralel (seperti RISC).

Tetapi karena pemberian instruksi terurut itu menggunakan perangkat keras, maka

 prosesor menjadi lebih kompleks. Dan lagi karena instruksi x86 yang kompleks, maka

 perangkat keras yang dibutuhkan untuk pengkode menjadi banyak dan membutukan

disipasi panas yang lebih besar. Berikut ini ditampilkan gambar alur eksekusi dari instrusi

 pada prosesor x86. Dalam disain superskalar konvensional, penulis perangkat lunak 

menulis program sekuensial pada bahasa pemrograman tingkat tinggi dan lalu dikompilasi

ke bahasa mesin. Kode mesin ini dijalankan secara sekuensial juga, dan instruksi CPU

diatur sehingga diumpankan pada perangkat keras dan dijalankan secara paralel.

Scheduler secara teliti akan menguji keterkaitan kode, dan mengurutkannya sebelumdijalankan. Pada akhirnya, kode yang sekuensial itu dijalankan oleh CPU secara paralel.

Melakukan hal ini dengan program membutuhkan beban kerja yang berat di CPU, dan

sering membutuhkan biaya tambahan (baik siklus clock atau jumlah transistor)

Salah satu jenis dari arsitektur, dimana superscalar adalah sebuah uniprocessor 

yang dapat mengeksekusi dua atau lebih operasi scalar dalam bentuk paralel. Merupakan

salah satu rancangan untuk meningkatkan kecepatan CPU. Kebanyakan dari komputer 

saat ini menggunakan mekanisme superscalar ini. Standar pipeline yang digunakan adalah

untuk pengolahan bilangan matematika integer (bilangan bulat, bilangan yang tidak 

memiliki pecahan), kebanyakan CPU juga memiliki kemampuan untuk pengolahan untuk 

data floating point (bilangan berkoma). Pipeline yang mengolah integer dapat jugadigunakan untuk mengolah data bertipe floating point ini, namun untuk aplikasi tertentu,

10

Page 11: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 11/21

terutama untuk aplikasi keperluan ilmiah CPU yang memiliki kemampuan pengolahan

floating point dapat meningkatkan kecepatan prosesnya secara dramatis.

Peristiwa menarik yang bisa dilakukan dengan metoda superscalar ini adalah

dalam hal memperkirakan pencabangan instruksi (brach prediction) serta perkiraaneksekusi perintah (speculative execution). Peristiwa ini sangat menguntungkan buat

 program yang membutuhkan pencabangan dari kelompok intruksi yang dijalankankannya.

Program yang terdiri dari kelompok perintah bercabang ini sering digunakan dalam

 pemrograman. Contohnya dalam menentukan aktifitas yang dilakukan oleh suatu sistem

  berdasarkan umur seseorang yang sedang diolahnya, katakanlah jika umur yang

 bersangkutan lebih dari 18 tahun, maka akan diberlakukan instruksi yang berhubungan

dengan umur tersebut, anggaplah seseorang tersebut dianggap telah dewasa, sedangkan

untuk kondisi lainnya dianggap belum dewasa. Tentu perlakuannya akan dibedakan

sesuai dengan sistem yang sedang dijalankan.

Lalu apa yang dilakukan oleh CPU untuk hal ini? Komputer akanmembandingkan nilai umur data yang diperolehnya dengan 18 tahun sehingga komputer 

dapat menentukan langkah dan sikap yang harus diambilnya berdasarkan hasil

 perbandingan tersebut. Sikap yang diambil tentu akan diambil berdasarkan pencabangan

yang ada.

Pada CPU yang mendukung perintah pencabangan ini, CPU membutuhkan

lumayan banyak clock cycle, mengingat CPU menempatkan semuanya pada pipeline dan

menemukan perintah berikutnya yang akan dieksekusinya. Sirkuit untuk branch

  prediction melakukan pekerjaan ini bekerja sama dengan pipeline, yang dilakukan

sebelum proses di ALU dilaksanakan, dan memperkirakan hasil dari pencabangan

tersebut. Jika CPU berfikir bahwa branch akan menuju suatu cabang, biasanya

 berdasarkan pekerjaan sebelumnya, maka perintah berikutnya sudah dipersiapkan untuk 

dieksekusi berikut data-datanya, bahkan dengan adanya pipeline ini, bila tidak diperlukan

suatu referensi dari instruksi terakhir, maka bisa dilaksanakan dengan segera, karena data

dan instruksi yang dibutuhkan telah dipersiapkan sebelumnya.

Dalam hal speculative execution, artinya CPU akan menggunakan melakukan

 perhitungan pada pipeline yang berbeda berdasarkan kemungkinan yang diperkirakan

oleh komputer. Jika kemungkinan yang dilakukan oleh komputer tepat, maka hasilnya

sudah bisa diambil langsung dan tinggal melanjutkan perintah berikutnya, sedangkan jika

kemungkinan yang diperkirakan oleh komputer tidak tepat, maka akan dilaksanakankemungkinan lain sesuai dengan logika instruksi tersebut.

Teknik yang digunakan untuk pipeline dan superscalar ini bisa melaksanakan

 branch prediction dan speculative execution tentunya membutuhkan ekstra transistor yang

tidak sedikit untuk hal tersebut. Sebagai perbandingan, komputer yang membangkitkan

 pemrosesan pada PC pertama yang dikeluarkan oleh IBM pada mesin 8088 memiliki

sekitar 29.000 transistor. Sedangkan pada mesin Pentium III, dengan teknologi

superscalar dan superpipeline, mendukung branch prediction, speculative execution serta

 berbagai kemampuan lainnya memiliki sekitar 7,5 juta transistor. Beberapa CPU terkini

lainnya seperti HP 8500 memiliki sekitar 140 juta transistor.

11

Page 12: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 12/21

IV. OPERASI PIPELINING DAN SUPERSCALAR 

Sekarang kita memusatkan perhatian pada komponen waktu prosesor dari elapsed

time total. Misalkan T adalah waktu prosesor yang diperlukan untuk mengeksekusi suatu

  progaram yang telah dipersiapkan dalam beberapa bahasa tingkat tinggi. Compiler 

menghasilkan program objek bahsa mesin yang sesuai dengan program source.

Asumsikan bahwa eksekusi lengkap dari program memerlukan N instruksi bahasa mesin.

Jumlah N adalah aktual eksekusi instruksi, dan tidak harus setara dengan jumlah eksekusi

instruksi-instruksi mesin dalam program objek. Beberapa instruksi dapat dieksekusi lebih

dari sekali, yaitu untuk instruksi yang berada di dalam loop. Instruksi yang lain mungkin

tidak dieksekusi sama sekali, tergantung data input yang digunakan,misalkan jumlah

langkah dasar rata-rata yang diperlukan untuk mengeksekusi satu instruksi mesin adalh S,

dimana tiap langkah dasar diselesaikan dalam satu siklus clock. Jika clock rate adalah R siklus per detik, maka waktu eksekusi program dinyatakan sebagai berikut : T = N x S / R 

Rumusan ini sering disebut sebagai persamaan performa dasar. Parameter 

 performa T untuk program aplikasi jauh lebih penting bagi user daripada nilai individu

  parameter N, S, atau R. untuk mencapai performa tinggi, desainer komputer harus

mencari cara untuk mengurangi nilai T, yang berarti mengurangi N dan S,dan

meningkatkan R. Nilai N berkurang jika program source dikompilasi menjadi instruksi

mesin yang lebih sedikit. Nilai S berkurang jika instruksi memiliki jumlah langkah dasar 

yang lebih kecil untuk dilaksanakan atau jika eksekusi instruksi ditumpangtindihkan.

Menggunakan clock frekuensi tinggi meningkatkan nilai tersebut atau R, yang berarti

 bahwa waktu yang diperlukan untuk menyelesaikan kangkah eksekusi dasdar berkurang.

Kita harus menekankan bahwa N, S, dan R, bukanlah parameter bebas; perubahan pada

salah satunya dapat mempengaruhi yang lain. Memperkenalkan fitur baru dalam desain

suatu prosesor akan menuju pada peningkatan performa hanya jika hasil keseluruhannya

mengurangi nilai T. Prosesor yang diiklankan memiliki clock 900 Mhz belum tentu

memberikan performa yang lebih baik daripada prosesor 700 MHz karena prosesor 

tersebut mungkin memiliki nilai S yang berbeda.

Gambar : Eksekusi prosesor superskalar

12

Page 13: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 13/21

Dalam pembahasan di atas, kita mengasumsikan bahwa instruksi dieksekusi satu

demi satu. Karena itu, nilai S adalah jumlah total langkah dasar, atau siklus clock, yang

diperlukan untuk mengeksekusi suatu instruksi. Peningkatan yang substansial pada

 performa dapat dicapai dengan menumpangtindihkan eksekusi instruksi yang beurutan,

menggunakan teknik yang disebut pipelining. Misalkan suatu instuksi. Add R1 , R2 , R3

yang menambahkan isi register R1 dan R2, dan menempatkan jumlahnya dalam R3. isi

R1 dan R2 mula-mula ditransfer ke input ALU. Setelah operasi penabahan dilakukan,

 jumlahnya ditarnsfer ke R3. prosesor dapat membaca instruksi selanjutnya dari memori

sementara operasi penambahan dilakukan. Kemudian jika instruksi tersebut juga

menggunakan ALU,operandnya dapat ditransfer ke input ALU pada waktu yang sama

dengan hAsil instruksi Add ditransfer ke R3. Pada kasus ideal, jika semua instruksi

ditumpangtindihkan ke derajat maksimum yang mungkin, maka eksekusi dilanjutkan

 pada kecepatan penyelesaian satu instruksi dalam tiap siklus clock. Instruksi individual

masih memerlukan beberapa siklus clock untuk penyelesaian. Tetapi, untuk tujuan

 perhitungan T, maka nilai efektif S adalah 1.

 Nilai ideal S = 1 tidak dapat dicapai dalam praktek karena berbagai alasan. Akan

tetapi, pipelining meningkatkan kecepatan eksekusi instruksi secara signifikan dan

menyebabkan nilai efektif S mendekati 1. Derajat konkurensi yang lebih tinggi dapat

dicapai jika banyak pipeline instruksi diterapkan pada prosesor. Hal ini berarti

digunakannya banyak unit fungsional, menciptakan jalur paralel dimana berbagai

instruksi yang berbeda dapat dapat dieksekusi secara paralel. Dengan pengaturan tersebut,

maka dimungkinkan untuk memulai beberapa instruksi pada tiap siklus clock. Mode

operasi in disebut eksekusi superscalar. Jika mode ini dapat bertahan dalam waktu yang

lama selama eksekusi program, maka nilai efektif S dapat dikurangi hingga kurang hasil

dari satu. Tentu saja, eksekusi paralel harus mempertahankan kebenaran logika program,

sehingga hasil yang diperoleh harus sama dengan hasil dari eksekusi serial instruksi

 program. Banyak dari prosesor performa tinggi saat ini didesain untuk bekerja dengan

cara tersebut

.

V. ARSITEKTUR SUPERSKALAR 

Jika satu pipeline bagus, maka tentu dua pipeline akan lebih bagus. Satu desain

yang mungkin bagi sebuah CPU dengan pipeline ganda, didasarkan pada Gambar 7.3

ditunjukkan pada Gambar 7.4. Di sini suatu satuan membaca instruksi tunggal mengambil

 pasangan pasangan dari instruksiinstruksi secara bersama dan memasukkan masing-

masing pasangan ke dalam pipelinenya sendiri, lengkap dengan ALUnya sendiri bagi

operasi paralel. Agar dapat beroperasi secara paralel, kedua instruksi tersebut tidak boleh

  berebutan dalam menggunakan sumber daya (contoh, registerregister), dan salah satu

instruksi tidak boleh bergantung pada hasil dari instruksi yang lain. Seperti halnya dengan

13

Page 14: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 14/21

sebuah pipeline tunggal, begitu pul kompiler harus menjamin situasi ini tetap terjaga

(yaitu, hardware tidak memeriksa dan memberikan hasil-hasil yang salahjika

instruksiinstruksi tidak sebanding), atau konflik-konflik dideteksi dan dihilangkan selama

 pelaksanaan dengan menggunakan hardware tambahan.

Meskipun pipelinepipeline, tunggal atau ganda, sebagian besar digunakan pada

mesinmesin RISC (komputer 386 dan generasigenerasi pendahulunya tidak memiliki

satupun), Intel 486 adalah yang pertama kali mulai memperkenalkan pipelinepipeline ke

dalam CPUCPUnya. Intel 486 memiliki satu pipeline dan Pentium memiliki dua pipeline

lima tahap seperti pada Gambar 7.4., meskipun pembagian tugas sebenarnya antara tahap

2 dan tahap 3 (yang disebut decode1 dan decode2) sedikit berbeda dibanding dalam

contoh kita. Pipeline utama, yang disebut pipeline u, dapat menjalankan sebuah instruksi

Pentium yang selalu berubahubah. Pipeline kedua, yang disebut pipeline v, dapat

menjalankan hanya instruksiinstruksi integer sederhana (dan juga satu instruksi titik 

mengambang sederhana FXCH).

Peraturan-peraturan yang rumit menentukan apakah sepasang instruksi sebanding

sehingga mereka dapat dijalankan secara paralel. Jika instruksi instruksi yang

 berpasangan tidak cukup sederhana atau tidak sebanding, hanya pasangan pertama yang

dijalankan (dalam pipeline u). Pasangan kedua kemudian disimpan dan dipasangkan

dengan instruksi berikutnya. Instruksi-instruksi selalu dijalankan secara berurutan. Jadi

kompiler – kompiler khusus Pentium yang memproduksi pasangan-pasangan instruksi

yang sebanding dapat memproduksi program-program yang beroperasi lebih cepat

dibanding kampiler-kompiler lama. Pengukuran-pengukuran menunjukkan bahwa sebuah

Pentium yang mengoperasikan kode yang dioptimalkan untuk Pentium tersebut memiliki

kinerja dua kali lebih cepat dibandingkan dengan program-program integer seperti sebuah

komputer 486 yang beroperasi pada laju kecepatan detak yang sama (Pountain, 1993).

Hasil ini dapat dikaitkan seluruhnya dengan pipeline kedua.

Gambar : Pipeline lima tahap ganda dengan satuan membaca instruksi biasa

14

Page 15: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 15/21

Gambar : Prosessor superskalar dengan lima satuan fungsional

Beralih ke empat pipeline dapat dilakukan, namun bila hal ini dilakukan akan

menduplikat terlalu banyak hardware. Bahkan, suatu pendekatan berbeda digunakan pada

highend CPU. Ide dasarnya adalah untuk memiliki hanya satu pipeline tunggal namun

  pipeline tersebut memiliki berbagai macam satuan fungsi, seperti ditunjukkan pada

Gambar 7.5. Contoh, Pentium III memiliki suatu struktur yang mirip dengan gambar.

Istilah arsitektur superskalar ditetapkan bagi pendekatan ini pada 1987 (Agerwala dan

Cocke, 1987). Namun sebenarnya pendekatan ini telah digunakan pada komputer CDC6600 30 tahun sebelumnya. Komputer 6600 ini mengambil sebuah instruksi setiap 100

nsec dan membawa instruksi tersebut ke salah satu dari 10 satuan fungsional untuk 

dijalankan secara paialel sementara CPU beroperasi untuk untuk mendapatkan instruksi

  baru. Yang tersirat dalam ide mengenai prosesor superskalar adalah bahwa tahap S3

dapat mengeluarkan instruksi-instruksi lebih cepat daripada tahap S4 dalam menjalankan

instruksi-instruksi tersebut. Jika tahap S3 mengeluarkan sebuah instruksi setiap 10 nsec

dan seluruh satuan fungsional dapat melaksanakan tugas mereka dalam 10 nsec, maka

tidak lebih dari satu satuan yang akan benar-benar sibuk, terlepas dari ide keseluruhan.

Dalam kenyataanya, sebagian besar satuan Fungsional dalam tahap S4 membutuhkankirakira lebih dari satu siklus detak untuk menjalankan instruksi-instruksi, dan tentu saja

satuan-satuan tersebut adalah satuan-satuan yang dapat mengakses memori atau

mengoperasikan aritmetik titik mengambang. Seperti dapat dilihat dari gambar tersebut,

ada kemungkinan untuk memiliki berbagai macam ALU pada tahap S4.

Permintaan untuk komputer-komputer dengan kecepatan yang lebih tinggi

tampaknya sulit dipenuhi. Para astronom ingin mensimulasi apa yang terjadi pada

mikrodetik pertama setelah terjadi big bang (dentuman besar), para ahli ekonomi ingin

memodelkan perekonomian dunia, dan para remaja ingin memainkan game game

multimedia interaktif 3D melalui internet dengan teman-teman virtualnya. MeskipunCPU-CPU semakin cepat, pada akhirnya mereka akan menemui masalah berkaitan

15

Page 16: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 16/21

dengan kecepatan cahaya, yang mungkin tetap pada 20 cm/nanodetik dalam kabel

tembaga atau serat optik, terlepas dari seberapa pintarnya para insinyur Intel. Demikian

 pula halnya dengan chip-chip yang berkecepatan tinggi, akan menghasilkan lebih banyak 

 panas; yang penyebaran panas itu sendiri justru merupakan suatu masalah. Paralelisme

instruksilevel sedikit membantu, tapi pipeline dan operasi superskala jarang memperoleh

hasil lebih dari suatu faktor lima atau sepuluh. Untuk memperoleh hasil 50, 100, atau

lebih, satu-satunya cara adalah mendesain komputer dengan berbagai macam CPU, untuk 

itu sekarang kita akan melihat bagaimana sebagian dari CPU-CPU

ini diorganisasikan.

Gambar : Alur pemberian instruksi pada x86 Superscalar

Suatu mesin VLIW, melalukan proses pengurutan ulang dan menjadikan paralel

dengan perangkat lunak. Disain satu VLIW seperti Intel IA-64. Semua bagian perangkat

lunak yang melakukan hal ini adalah kompiler.. Kompiler mengekstraksi paralelisme dari

kode, melihat keterkatian dan menghasilkan kode yang teroptimasi dengan core VLIW

dapat dijalankan secepat mungkin.

Gambar : Eksekusi pada mesin VLIW

Akan tetapi pendekatan yang digunakan oleh Crusoe berbeda. Proses scheduling

dan lain sebagainya dilakukan oleh perangkat lunak yang berada pada prosesor Crusoe.

VI. Keterbatasan Superskalar

16

Page 17: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 17/21

Pendekatan superskalar tergantung pada kemampuan mengeksekusi sejumlah

instruksi secara paralel. Ada beberapa keterbatasan yang terdapat pada paralelisme yang

 perlu diatasi oleh sistem

True data dependency

Procedural dependency

Resource conflict

True Data Dependency

Ketergantungan data sebenarnya terjadi bila sebuah instruksi membutuhkan data

yang dihasilkan oleh instruksi sebelumnya. Instruksi tsb tidak dapat dieksekusi apabila

instruksi sebelumnya belum selesai dieksekusi. Apabila terdapat ketergantungan data

antara instruksi yang pertama dengan instruksi yang kedua, maka instruksi kedua diberi

delay selama beberapa siklus waktu yang diperlukan untuk menghilangkanketergantungan.

Procedural Dependency

Instruksi-instruksi yang berada setelah sebuah pencabangan mempunyai

ketergantungan prosedural pada pencabangan dan tidak akan dapat dieksekusi sampai

  pencabangan tersebut selesai dieksekusi. Konsekuensi pada pipeline superskalar akan

lebih parah karena kehilangan kesempatan dalam jumlah yang lebih besar pada setiap

delaynya.

Resource Conflict

Resource conflict merupakan persaingan antara dua buah instruksi atau lebih

untuk memperoleh sumber daya yang sama pada saat bersamaan. Contoh sumber daya

adalah memori, cache, bus, register-file port dan unit-unit fungsional lainnya. Resource

conflict dapat diatasi dengan cara menduplikasi sumber daya. Apabila suatu operasi

memakan waktu lama, maka source conflict dapat dikurangi dengan melakukan pipeline

terhadap unit-unit fungsional tertentu.

VII. Paralelisme Tingkat Instruksi

Paralelisme tingkat instruksi terjadi apabila instruksi-instruksi yang terdapat pada

rangkaian bersifat independen dan karena itu dapat dieksekusi secara paralel dengan cara

saling bertumpang tindih. Paralelisme tingkat instruksi ditentukan oleh frekuensi true data

dependency dan procedural dependency yang terdapat di dalam kode. Penggunaan set

instruksi yang memiliki panjang tetap akan meningkatkan paralelisme tingkat instruksi.

Paralelisme Mesin

Paralelisme mesin adalah ukuran kemampuan prosesor dalam memanfaatkan

 paralelisme tingkat instruksi. Paralelisme mesin ditentukan oleh jumlah pipeline yang

  paralel (jumlah instruksi yang dapat diambil dan dieksekusi dalam waktu yang

17

Page 18: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 18/21

 bersamaan) dan oleh kecepatan serta kecanggihan mekanisme yang digunakan prosesor 

untuk menemukan instruksi-instruksi independen.

Kebijakan Instruction Issue

Kebijakan instruction issue adalah kebijakan penginisiasian eksekusi instruksi didalam unit-unit fungsional prosesor. Kebijakan instruction issue superskalar dapat

digolongkan dalam 3 kategori:

→ In-order issue dengan in-order completion

→ In-order issue dengan out-of-order completion

→ Out-of-order issue dengan out-of-order completion

In-Order Issue dengan In-Order Completion

Kebijakan instruction issue yang paling sederhana adalah dengan menerbitkan

instruksi dalam urutan pasti yang akan didapatkan oleh eksekusi sekuensial (in-order-

issue) dan menuliskan hasilnya dengan urutan yang sama (in-order-completion).

In-Order Issue dengan Out-of-Order Completion

Dengan out-of-order completion, sembarang jumlah instruksi hingga derajat

 paralelisme mesin maksimum di seluruh unit-unit fungsionalnya dapat berada pada

satu tahapan eksekusi pada saat yang bersamaan.

Out-of-order completion memerlukan logika instruction issue yang lebih kompleksdibandingkan dengan in-order-completion.

Out-of-Order Issue dengan Out-of-Order Completion

Untuk memungkinkan out-of-order issue, maka perlu dilakukan decouple tahapan-

tahapan dekode dan eksekusi pipeline. Hal ini dilakukan dengan cara menggunakan

  buffer yang dianggap sebagai jendela instruksi. Setelah prosesor menyelesaikan

 pendekodean instruksi, maka instruksi tersebut ditempatkan di dalam jendela instruksi.

Selama buffer belum penuh, prosesor dapat mengambil instruksi dan mendekode

instruksi lainnya. Apabila pada tahapan eksekusi tersedia unit fungsional, maka

instruksi yang berasal dari jendela instruksi dapat dikirimkan ke tahap eksekusi.

18

Page 19: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 19/21

Pada awal 1991 IBM menyadari bahwa desain mereka berpotensi menjadi mikroprosesor 

volume tinggi yang digunakan di seluruh industri. Apple mendekati IBM dengan tujuan

 berkolaborasi pada pengembangan keluarga mikroprosesor chip tunggal berdasarkan

arsitektur POWER. Segera setelah itu, Apple, sebagai salah satu pelanggan Motorola

terbesar mikroprosesor desktop-kelas, meminta Motorola untuk bergabung dengan diskusi

karena hubungan panjang mereka, pengalaman mereka lebih luas dengan mikroprosesor 

volume tinggi manufaktur dari IBM dan untuk melayani sebagai sumber kedua untuk 

mikroprosesor. Ini-cara kolaborasi tiga dikenal sebagai aliansi AIM , untuk A pple, sayaBM, M otorola.

VIII. Alasan desain Superscalar

Sebagian besar operasi menggunakan besaran/nilai skalar Operasi ini memungkinkan

 peningkatan kinerja sistem hingga level tertentu Superscalar Implementation.

Proses fetch dari beberapa instruksi secara bersamaan. Logika untuk menentukan

ketergantungan sebenarnya yang meliputi nilai register Mekanisme untuk 

mengkomunikasikan nilai tersebut. Mekanisme untuk menginisialisasi instruksi paralel.

Tersedianya sumber untuk eksekusi paralel dari beberapa instruksi. Mekanisme

 processing instruksi dengan urutan yg sesuai.

1. Contoh CPU yang menerapkan arsitektur superscalar :

• 486, Pentium, Pentium Pro, keluarga Intel Pentium, Intel Pentium Pro, Intel

Pentium II, Intel Pentium III, Intel Itanium, Intel Xeon, Intel Pentium 4, Intel

Pentium M, Intel Core dari Intel Corporation; keluarga AMD K5, AMD K6,

AMD Athlon, AMD Athlon 64, dan AMD Opteron

Superscalar Processor Design

• Use PowerPC 604 as case study

• Speculative Execution, Register Renaming, Branch Prediction

More Superscalar Examples

19

Page 20: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 20/21

• MIPS R10000

• DEC Alpha 21264

2. Implementasi Superscalar

1. Proses fetch dari beberapa instruksi secara bersamaan.

2. Logika untuk menentukan ketergantungan sebenarnya yang meliputi nilai register.

3. Mekanisme untuk mengkomunikasikan nilai tersebut.

4. Mekanisme untuk menginisialisasi instruksi paralel.

5. Tersedianya sumber untuk eksekusi paralel dari beberapa instruksi.

6. Mekanisme processing instruksi dengan urutan yg sesuai.

Pada penjelasan diatas bias diterangkan bahwa untuk superscalar dapat digunakan untuk  berbagai keperluan dan dapat diimplementasikan pada perangkat prosessor seperti :

Pentium 4

Pada Pentium, implementasi superscalar dapat dijabarkan sebagai berikut :

• 80486 – CISC.

• Pentium.

• ada beberapa komponen superscalar.

• 2 unit eksekusi integer yang terpisah.

• Pentium Pro – Full superscalar.

• Memperhalus models subsequent & Meningkatkan design superscalar.

3. Permasalahan pada Superscalar

Kemampuan dari computer superscalar dapat dilihat dari banyaknya instruksi yang dapat

diproses secara parallel. Superscalar hingga derajat tertentu dapat terjadi jika computer 

mampu mengatasi permasalahan ketergantungan yang ada pada suatu instruksi,

diantaranya adalah : ketergantungan data, ketergantungan procedural, ketergantungan

sumber unit, ketergantungan output dan antiketergantungan. Dari lima ketergantungan

tersebut, sampai sekarang belum ada computer yang mampu mengatasinya secara total.

Bagaimanapun computer akan menemukan beberapa ketergantungan dalam

menyelesaikan suatu program.

Dari rancangan computer yang ada, hanya mampu meminimalisasikan beberapa

ketergantungan saja, walaupun demikian ternyata dengan usaha ini mampu diciptakancomputer dengan kinerja yang jauh lebih baik dari generasi-generasi sebelumnya. Adapun

20

Page 21: Tugas Paper Superscallar

5/14/2018 Tugas Paper Superscallar - slidepdf.com

http://slidepdf.com/reader/full/tugas-paper-superscallar 21/21

usaha yang dilakukan dalam peningkatan kinerja superscalar tersebut diantaranya : desain

 pipeline (out of  order issue and out of order  completion), memperbanyak tahapan pada

 pipeline, penduplikasian sumber unit (contoh : unit fungsional /ALU, memori, bus, cache,

dll), desain micro operation (pada system CICS), desain unit prediksi percabangan, dan

renaming allocation. Kebanyakan computer lebih menekankan pada upaya penduplikasianunit fungsional baik integer maupun floating point. Untuk itu pada pembahasan ini akan

kita bahas salah satu upaya peningkatan kinerja prosesor superscalar secara khusus dalam

hal reconfigurasi floating point unit (FPU).

IX. Kesimpulan

Superscalar (superskalar) adalah arsitektur prosessor yang memungkinkan eksekusi yang

 bersamaan (parallel) dari instruksi yang banyak pada tahap pipeline yang sama sebaik 

tahap pipeline yang lain. Superscalar ini mampu menjalankan Instruction LevelParallelism dengan satu prosesor. Superscalar dapat diaplikasikan di RISC dan CISC, tapi

 pada umumnya RISC.

Merupakan salah satu rancangan untuk meningkatkan kecepatan CPU. Kebanyakan dari

komputer saat ini menggunakan mekanisme superscalar ini. Standar pipeline yang

digunakan adalah untuk pengolahan bilangan matematika integer (bilangan bulat,

  bilangan yang tidak memiliki pecahan), kebanyakan CPU juga memiliki kemampuan

untuk pengolahan untuk data floating point (bilangan berkoma). Pipeline yang mengolah

integer dapat juga digunakan untuk mengolah data bertipe floating point ini, namun untuk 

aplikasi tertentu, terutama untuk aplikasi keperluan ilmiah CPU yang memilikikemampuan pengolahan floating point dapat meningkatkan kecepatan prosesnya secara

dramatis. Sebagian besar operasi menggunakan besaran/nilai skalar Operasi ini

memungkinkan peningkatan kinerja sistem hingga level tertentu.

21