Pipelining yaitu suatu cara yang digunakan untuk melakukan
sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan
secara kontinu pada unit pemrosesan. Dengan cara ini, maka unit pemrosesan
selalu bekerja. Teknik pipeline ini dapat diterapkan pada berbagai tingkatan
dalam sistemkomputer. Bisa pada level yang tinggi, misalnya program aplikasi,
sampai pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh
microprocessor.
Prosesor Pipeline yang berputar adalah prosesor baru untuk
arsitektur superscalar komputasi. Ini didasarkan pada cara yang mudah dan
pipeline yang biasa, struktur yang dapat mendukung beberapa ALU untuk lebih
efisien dalam pengiriman dari bagian beberapa instruksi. Daftar nilai arus yang
berputar di sekitar pipa, dibuat oleh dependensi data lokal. Selama operasi
normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya
dibatasi oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide
utama dari Pipeline Prosesor yang berputar adalah circular uni-arah mengalir
dari memori register oleh pusat waktu logika dan proses secara parallel dari
operasi ALU.
Prosesor Pipeline yang berputar adalah prosesor baru untuk
arsitektur superscalar komputasi. Ini didasarkan pada cara yang mudah dan pipeline
yang biasa, struktur yang dapat mendukung beberapa ALU untuk lebih efisien
dalam pengiriman dari bagian beberapa instruksi. Daftar nilai arus yang
berputar di sekitar pipa, dibuat oleh dependensi data lokal. Selama operasi
normal, kontrol sirkuit tidak berada pada jalur yang kritis dan kinerja hanya dibatasi
oleh data harga. Operasi mengalir dengan interval waktu sendiri. Ide utama dari
Pipeline Prosesor yang berputar adalah circular uni-arah mengalir dari memori
register oleh pusat waktu logika dan proses secara parallel dari operasi ALU.
Instruksi Pipeline
Tahapan pipeline adalah sebagai berikut:
- Mengambil instruksi dan
membuffferkannya
- Ketika tahapan kedua bebas
tahapan pertama mengirimkan instruksi yang
dibufferkan tersebut. - Pada saat tahapan kedua
sedang mengeksekusi instruksi, tahapan pertama
memanfaatkan siklus memori yang tidak dipakai untuk mengambil dan
membuffferkan instruksi berikutnya.
Karena untuk setiap tahap pengerjaan instruksi, komponen
yang bekerja berbeda, maka dimungkinkan untuk mengisi kekosongan kerja di
komponen tersebut. Sebagai contoh:
Instruksi
1: ADD AX, AX
Instruksi
2: ADD EX, CX
Setelah CU menjemput instruksi 1 dari memori (IF), CU akan
menerjemahkan instruksi tersebut (ID). Pada menerjemahkan instruksi 1 tersebut,
komponen IF tidak bekerja. Adanya teknologi pipeline menyebabkan IF akan
menjemput instruksi 2 pada saat ID menerjemahkan instruksi 1. Demikian
seterusnya pada saat CU menjalankan instruksi 1 (EX), instruksi 2 diterjemahkan
(ID).
Jenis Pipeline
1. Pipeline Arithmetic, berguna untuk
operasi vektor. Pengembangan pipeline arithmetic dapat dilihat dari perkalian
biner unsigned. Operasi shift dan penambahan menjadi tahapan pemrosesan
dalam pengali pipelined. Pengalian bilangan biner dengan 2n adalah sama dengan
menggesernya ke kiri sebesar n bit dan menyisipkan nol pada sebelah kanannya.
2. Pipeline Unit Instruction, berguna
untuk komputer yang mempunyai set instruksi yang sederhana. Tujuannya adalah
untuk memaksimalkan kecepatan mengalirnya instruksi.
Reduced Instruction Set Computer (RISC)
RISC merupakan bagian dari arsitetur mikroprosessor,
berbentuk kecil dan berfungsi untuk set instruksi dalam komunikasi diantara
arsitektur yang lainnya. RISC memiliki fitur utama, yaitu:
- General purpose register dalam
jumlah yang sangat banyak.
- Menggunakan teknologi compiler
untuk mengoptimalisasikab penggunaan register.
- Instruction set yang sedikit
dan sederhana.
- Pendekatan umum dalam instruksi
pipeline.
- Set eksekusi yang besar dan
lebih banyak mode pengalamatan.
RISC
memiliki ciri-ciri tersendiri, yaitu:
- Instruksi berukuran tunggal
(satu instruksi per siklus).
- Mode pengalamatan yang
sederhana dan sedikit (biasanya kurang dari 5 buah).
- Tidak ada pengalamatan tidak
langsung yang mengharuskan mengakses memori agar memperoleh alamat operand
lainnya di dalam memori.
- Format instruksi yang
sederhana.
- Format instruksi yang fix.
- Proses compile yang cepat.
Pipelining
Pada RISC
Pada pipelining RISC terdapat berbagai macam instruksi
register to register. Siklus instruksinya memiliki 2 fase:
- I: Instruction Fetch
(Pengambilan Instruksi).
- E: Execute (Melakukan operasi
ALU dengan register input dan output).
Sementara
operasi load dan store memiliki 3 fase:
- I: Instruction Fetch.
- E: Execute (Menghitung alamat
memori).
- D: Memori (Operasi register ke
memori atau memori ke register).
Prosesor
Superscalar
Superscalar adalah arsitektur prosessor yang memungkinkan
eksekusi yang bersamaan (parallel) dari instruksi yang banyak pada tahap pipeline
yang sama sebaik tahap pipeline yang lain. Superscalar mampu menjalankan
Instruction Level Parallelism dengan satu prosesor. Superscalar dapat
diaplikasikan di RISC dan CISC, tapi pada umumnya RISC.
Pipeline Adalah meningkatkan kinerja komputer dengan cara
saling overlap tahapan dari instruksi yang berbeda. Pada pipeline untuk
melakukan proses (stages) overlapping dibutuhkan paling tidak setengah clock.
Sedangkan superscalar mengijinkan proses untuk bekerja secara bersamaan pada
saat clock yang sama.
Proses superscalar adalah sebagai berikut:
- Memproses
lebih dari satu instruksi per clock cycle .
- Sangat
dimungkinkan untuk memisahkan siklus fetch and execute.
- Memiliki
Buffers pada fase antara proses fetch and decode.
- Memiliki
unit eksekusi yang Parallel
Sumber: