Pertemuan 13-prosessor-super-skalar1
-
Upload
france-rhezhek -
Category
Travel
-
view
188 -
download
0
Transcript of Pertemuan 13-prosessor-super-skalar1
1
ORGANISASI KOMPUTER
MATA KULIAH:
PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER JURUSAN PENDIDIKAN TEKNIK ELEKTRO
FAKULTAS TEKNIK UNIVERSITAS NEGERI MAKASSAR
PERTEMUAN 13
Prosesor Superskalar
2013
CREATED BY:
BY AYU ANGGRIANI H
2
FRANS RUMENGAN D. 1129040049
PTIK 02 2011
OPERASI SUPERSKALAR
Prosesor Superskalar adalah istilah bagi prosesor yang mampu
melakukan banyak instruksi setiap siklusnya, dengan menggunakan
sebuah teknik yang disebut dengan pipelining.
3
EKSEKUSI OUT-OF-ORDER
Gambar 1.1 Contoh aliran eksekusi instruksi dalam prosesor
Gamhar 8.21 Penyelesaian instruksi sesuai urutan program.
4
Menggunakan register temporer
5
PENYELESAIAN EKSEKUSI
Dengan menggunakan eksekusi out-of-order, unit eksekusi bebas untuk mengeksekusi instruksi lain dengan segera. Pada saat yang sama, instruksi harus diselesaikan sesuai dengan urutan program untuk memungkinkan precise exception. Persyaratan yang tampaknya bertentaingan ini dapat diselesaikan jika eksekusi dapat dilakukan
6
OPERASI DISPATCH
Sekarang kita kembali ke operasi dispatch. Pada saat keputusan
dispatching dibuat, unit dispatch harus memastikan tersedianya semua
resource yang diperlukan untuk eksekusi suatu instruksi. Misalnya,
karena hasil instruksi mungkin harus ditulis dalam register temporer,
maka register tersebut harus kosong, dan dicadangkan untuk digunakan
oleh instruksi tersebut sebagai bagian dari operasi dispatch. Lokasi dalam
reorder buffer juga harus tersedia untuk instruksi tersebut. Pada saat
semua resource yang diperlukan telah ditetapkan, termasuk unit eksekusi
yang sesuai, maka instruksi tersebut dikirim
7
CONTOH UItraSPARC II
Desain prosesor telah sangat meningkat dalam tahun-tahun terakhir.
Klasifikasi prosesor sebagai RISC atau CISC murni tidak lagi sesuai karena
prosesor modern performa-tinggi yang berisi elemen kedua gaya desain
tersebut.
8
Prosesor RISC awal menunjukkan bagairnana fitur tertentu dapat
membantu menghasilkan performa tinggi. Dua observasi berikut terbukti
sangat penting:
Pipelining, yang meng-enable prosesor untuk mengeksekusi beberapa
instruksi pada saat yang sama, dapat menghasilkan peningkatan
performa apabila pipeline tersebut tidak sering di-stall.
Sinergi yang erat antara desain hardware and kompiler meng-enable
kompiler untuk memanfaatkan secara maksimum strukturpipelined
dengan mengurangi kejadian yang menyebabkan pipeline stall.
9
Arsitektur SPARC
SPARC merupakan singkatan dari Scalable Processor ARChitecture. Ini
merupakan spesifikasi arsitektur set instruksi suatu prosesor, yaitu, spesifikasi
set instruksi prosesor dan organisasi register, tanpa memperhatikan bagaimana
implementasinya pada hardware. Selanjutnya, SPARC merupakan "open
architecture," yang berarti perusahaan komputer selain Sun Microsystems
dapat mengembangkan hardware mereka sendiri untuk mengimplementasikan
set instruksi yang sama.
10
UltraSPARC II
Arsitektur SPARC, yang merupakan basis bagi prosesor yang
digunakan dalam Sun workstation, adalah contoh yang sangat baik.
Salah satu implementasi Sun dengan arsitektur SPARC disebut
UItraSPARC II
11
Gambar 8.23 Blok bangunan utama prosesor UItraSPARC II.
12
STRUKTUR PIPELINE
UltraSPARC II memiliki pipeline eksekusi instruksi sembilan-stage,
ditunjukkan pada Gambar 8.24. Fungsi tiap stage diselesaikan dalam satu
clock cycle prosesor. Kita akan memberikan ikhtisar operasi pipeline,
kemudian membahas tiap stage secara detil.stage pertama pada pipeline
adalah umum bagi semua instruksi. Instruksi diambil dari cache instruksi
pada stage pertama (F) dan di-decode sebagian dalam stage ke dua (D).
Kemudian, pada stage ketiga (G), suatu grup yang berisi sampai dengan
empat instruksi dipilih untuk eksekusi secara paralel. Instruksi tersebut
kemudian dikirim ke unit eksekusi integer dan floating-point.
13
Tiap dua unit eksekusi terdiri dari dua pipeline paralel dengan masing-
masing enam stage. Empat stage pertama tersedia untuk operasi yang
ditetapkan oleh instruksi tersebut, dan dua yang terakhir digunakan untuk
memeriksa exception dan menyimpan hasil instruksi.
Gambar 8.24 Organisasi pipeline pada prosesor UltraSPARC
14
Pengambilan dan Decode Instruksi
PDU mengambil hingga empat instruksi dari cache instruksi, men-decode-
nya sebagian, dan menyimpan hasilnya dalam buffer instruksi, yang dapat
menyimpan sampai dengan 12 instruksi. Decoding yang terjadi pada stage ini
meng-enable PDU untuk menentukan apakah instruksi tersebut adalah
instruksi branch. Juga mendeteksi fitur penting yang dapat digunakan untuk
mempercepat keputusan yang harus dibuat selanjutnya dalam pipeline
tersebut
15
Grouping (Pengelompokan)
Pada stage ketiga pipeline, stage G, Grouping Logic memilih grup sampai
dengan empat instruksi untuk dieksekusi secara paralel dan
mengirimkannya ke unit eksekusi integer dan floating-point. Gambar 8.25
menunjukkan rangkaian instruksi pendek dan cars instruksi tersebut akan
dikirimkan.
16
PERTIMBANGAN PERFORMA
Kita menegaskan pada Bagian 1.6 bahwa waktu eksekusi, T , pada
program yang memiliki count instruksi dinamik N dinyatakan sebagai
R
SxNT
17
JUMLAH PIPELINE STAGE
Fakta bahwa n-stage pipeline dapat meningkatkan throughput instruksi sebesar
faktor n menunjukkan bahwa kita sebaiknya menggunakan sejumlah besar
stage. Akan tetapi, dengan meningkatknya jumlah pipeline stage, meningkat
pula kemungkinan pipeline di-stall, karena lebih banyak instruksi yang
dieksekusi secara konkuren. Jadi, ketergantungan antar instruksi yang terpisah
jauh masih dapat menyebabkan pipeline stall. Juga, penalti-branch dapat
menjadi lebih signifikan, seperti yang ditunjukkan Gambar 8.9. Untuk alasan
ini, penambahan dari peningkatan nilai n mulai berkurang, dan biayanya tidak
dapat diterima.
18
S E M O G A B E R M A N F A A T
THANKS 19