Anda di halaman 1dari 15

SINGLE INSTRUCTION SINGLE DATA

NAMA KELOMPOK:
I NYOMAN TRI UTAMA PUTRA (090010050) I WAYAN SUARDIKA (090010471) I GEDE YUDI ANTARA (090010715) I GEDE SUAMBA (090010718)

STMIK STIKOM BALI 2011

Kata Pengantar

Puji syukur kami panjatkan kehadirat Tuhan Yang Maha Esa karena atas berkat rahmat-Nya, saya bisa menyelesaikan Laporan Materi Pemrosessan Paralel SISD (Single Intruction Single Data) ini. Laporan ini di buat berdasarkan materi yang kami dapat dari segala sumber. Dalam menyusun Laporan ini, informasi-informasi atau bahan-bahan diperoleh dengan mengkaji dari sumber-sumber dari internet, dan dari bapak dosen. Kami menyadari akan kekurangan dalam penulisan Laporan yang kami buat ini, maka dari itu kami menerima setiap saran dari para pembaca dengan senang hati. Kami juga mengucapkan terima kasih kepada para pihak yang telah membantu. Khususnya, kepada guru pembimbing bidang studi produktif yang telah memberikan bimbingan. Semoga Laporan ini bermanfaat bagi siswa dan masyarakat dalam menambah pengetahuan, khususnya mengenai manfaat dari komputer tersebut.

Denpasar, 14 Oktober 2011

BAB I Latar Belakang


Pada jaman sekarang perkembangan komputer begitu pesat. Dengan

menggunakan komputer kita dapat mengerjakan pekerjaan kantor maupun lainnya dengan mudah. Seiring berjalannya waktu perkembangan komputer begitu pesat di iringi perkembangan processor dan hardware lainnya. System instruksi processor ada empat macam. Salah satunya SISD (Single Instruction Single Data) adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu model SISD ini bisa dikatakan sebagai model untuk komputasi tunggal. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.

1.1

Pengertian Secara Umum SISD adalah Sebuah komputer yang instruksi-instruksinya dijalankan satu per satu dan sebuah instruksi tunggal berhubungan dengan paling banyak satu operasi data. Komputer ini menggunakan pipelining untuk mempercepat pemrosessan dan kebanyakan komputer SISD di-pipelin-kan ke beberapa saluran tambahan. Karakteristik SISD yang penting adalah pelaksanaan instruksi secara sekuensial (secara berurutan) dalam arti instruksi dan diproses secara serial Satu alur instruksi di decodekan untuk alur data tunggal.

BAB II Pembahasan
1.2 Klasifikasi Flynn Alur Instruksi (Instruction Stream) adalah urutan instruksi yang dilaksanakan oleh mesin. Adapun alur data adalah urutan data yang dipanggil oleh alur instruksi, baik instruksi maupun data diambil dari modul memori. Instruksi didecodenya diproses oleh Control Unit dalam prosesor,sedangkan proses alur data mengalir terjadi di dua arah antara processor dan memori.

1.3

Karakteristik SISD Adapun beberapa karakteristik komputer SISD adalah:

1. Menggunakan satu prosesor, karena arsitektur komputernya masih sangat lama.


2. Di dalam proses input outputnya masih menggunakan satu instruksi stream. 3. Data yang telah diproses di simpan dalam

satu memori, namun sebelum

tersimpan ke memori data terlebih dahulu di simpan ke memori sementara. 4. Disebut Uni-Processor karena sifat prosesornya yang masih sangat universal.

1.4

Penjelasan Dalam Gambar

Keterangan: CU IS PU DS MU : Control Unit : Instruction Stream (Arus Instruksi) : Processing Unit (Unit Pengolah yang biasa disebut ALU) : Data Stream (Arus Data) : Memory Unit (Unit Memori)

Ini merupakan skema dasar dalam proses komputer SISD, skema dasar ini menjelaskan bahwa arsitektur komputer SISD dalam prosesornya masih sangat sederhana. Diawali dengan control unit (CU), data yang masuk akan akan diproses di CU dan akan ditentukan akan di arahkan kemana data tersebut. Data yang sudah memiliki alamat itu disebut IS atau yang biasa disebut dengan arus instruksi. Arus instruksi ini akan menuju alamat yang sudah ditentukan olen control unit itu sendiri. Setelah data sudah mengetahui arus instruksinya, maka dilakukan proses perhitungan di dalam PU. Prosesing unit (PU) adalah bagian di dalam prosesor yang fungsinya melakukan perhitungan secara aritmatik dan logika. Data yang sudah dip roses di PU kemudian di lanjutkan atau di bawa ke memori penyimpanan. Saat proses transfer data berlangsung, proses ini disebut dengan data stream atau yang biasa disebut dengan arus data.

1.5

Arsitektur Von Neumann Arsitektur von Neumann atau Mesin Von Neumann adalah arsitektur yang diciptakan oleh John Von Neuman (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini. Arsitektur Von Neumann menggambarkan komputer dengan empat bagian utama : Unit Aritmatika dan Logic (ALU), unit kontrol, memori, dan alat masukan dan hasil (secara kolektif dinamakan I/O). Bagian ini dihubungkan oleh berkas kawat, BUS. Oleh karena itu model SISD ini bisa dikatakan sebagai model untuk komputasi tunggal. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.

Cara Kerja : 1. Input device berfungsi menerima instruksi-instruksi. 2. Intruksi-instruksi kemudian diterima pada accumulator, dan di simpan sementara. 3. Dilanjutkan Arithmetic Logic Unit menjalankan instruksi-instruksi arithmetic.

4. Control unit berfungsi mengontrol instruksi-instruksi dan melanjutkannya ke memory. 5. Memory mengeksekusi intruksi-intruksi tersebut, kemudian diteruskan ke arithmetic logic unit.
6. Di arithmetic logic unit, di teruskan ke accumulator, kemudian di tampilkan ke output.

Mesin Von Neumann adalah arsitektur komputer dengan prosesor yang sangat sederhana, cirri khas dari arsitektur ini adalah menggunakan Accumulator atau memori sementara dalam proses datanya. Proses datanya masih menggunakan metode stack atau tumpukan, ini dikarenakan arsitektur ini hanya menggunakan satu memori dan datanya hanya satu persatu di jalankan.

Setiap data yang masuk maupun data yang sudah diproses, selalu data tersebut dalam prosesnya, tersimpan di memori sementara dalam ALU. Proses ini merupakan awal pengembangan adanya memori RAM dan ROM dalam komputer modern.

Keterangan : IP : Instruction pointer

MAR : Memory Address Register MDR : Memory Data Register A : Accumulator

ALU : Arithmetic Logic Unit IR OP : Instruction Register : Opcode

ADDR : Address

Ini merupakan skema konsep dasar arsitektur Von Neuman yang mana pada skema tersebut menjadi awal terciptanya arsitektur computer modern. Di dalam skema tersebut von neuman menggunakan dua memory, Memory Tetap, dan Memory Sementara. Penggabungan arsitektur von neuman berawal dari pipelining, dan SISD. Saat data yang sudah di

pipelinekan di ubah menjadi bit-bit biner dalam decoder, kemudian bit-bit tersebut dilakukan perhitungan dan operasi logika dalam ALU. Data yang sudah di proses perhitungannya disimpan ke memory sementara(Accumulator), setelah di proses di register di tentukan alamat data tersebut. Alamat data tersebut ditentukan dari address data yang sudah di pipelinekan. Opcode dan address di dalam data pipeline akan di teruskan ke Instruction Pointer dan Memory Address Register.Data tersebut kemudian akan disimpan ke memory, dan diteruskan ke memory data register. Proses tersebut bersifat cycle atau prosesnya berulang-ulang.

1.6

Pipeline 1.6.1 Pengertian Pipeline

Pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan secara kontinou pada unit pemrosesor. Dengan ccara 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 dijaankan oleh microprocessor. Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan.Sedangkan dalam microprocessor yang menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses, maka instruksi yang berikutnya juga dapat diproses dalam

waktu yang bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi. Dengan penerapan pipeline ini pada microprocessor akan didapatkan peningkatan dalam unjuk kerja microprocessor. Hal ini terjadi karena beberapa instruksi dapat dilakukan secara parallel dalam waktu yang bersamaan. Secara kasarnya diharapkan akan didapatkan peningkatan sebesar K kali dibandingkan dengan microprocessor yang tidak menggunakan pipeline, apabila tahapan yang ada dalam satu kali pemrosesan instruksi adalah K tahap. Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar. Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yang sebelumnya. Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program counter, sedangkan instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program counter. Teknik pipeline yang diterapkan pada microprocessor, dapat dikatakan sebuah arsitektur khusus. Ada perbedaan khusus antara model microprocessor yang tidak menggunakan arsitektur pipeline dengan microprocessor yang menerapkan teknik ini. Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan.Sedangkan dalam microprocessoryang menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses, maka instruksi yang berikutnya juga dapat diproses dalam waktu yang bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi. Misalnya sebuah microprocessor menyelesaikan sebuah instruksi dalam 4 langkah.Ketika instruksi pertama masuk ke langkah 2, maka instruksi berikutnya diambil untuk diproses

pada langkah 1 instruksi tersebut.Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3, instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1. Teknik pipeline ini menyebabkan ada sejumlah hal yang harus diperhatikan sehingga ketika diterapkan dapat berjalan dengan baik. Tiga kesulitan yang sering dihadapi ketika menggunakan teknik pipeline ini adalah terjadinya penggunaan resource yang bersamaan, Ketergantungan terhadap data, Pengaturan Jump ke suatu lokasi memori. Karena beberapa instruksi diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang tepat agar proses tetap berjalan dengan benar. Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan data dari instruksi yang sebelumnya. 1.6.2 Instruksi Pipeline 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). Contoh pengerjaan instruksi tanpa pipeline t = 1 2 3 4 5 6 7 8 9 10 ADD AX, AX IF DE IF DE EX ADD BX,CX IF DE IF DE EX

Disini instruksi baru akan dijemput jika instruksi sebelumnya telah selesai dilaksanakan. Contoh pengerjaan instruksi dengan pipeline t = 1 2 3 4 5 6 7 8 9 10 ADD AX,AX IF DE IF DE EX ADD BX,CX IF DE IF DE EX ADD DX,DX IF DE IF DE EX

Disini instruksi baru akan dijemput setelah tahap IF menganggur (t2). Dengan adanya pipeline dua instruksi selesai dilaksanakan padadetik keenam (sedangkan pada kasus tanpa pipeline baru selesai pada detik kesepuluh). Dengan demikian telah terjadi percepatan sebanyak 1,67x dari 10T menjadi hanya 6T.Sedangkan untuk pengerjaan 3 buah instruksi terjadi percepatan sebanyak 2, 14 dari 15T menjadi hanya 7T. Untuk kasus pipeline sendiri, 2 instruksi dapat dikerjakan dalam 6T(CPI = 3) dan instruksi dapat dikerjakan dalam 7T (CPT = 2,3) dan untuk 4 instruksi dapat dikerjakan dalam 8T (CPI =2). Ini berarti utnuk 100 instruksi akan dapat dikerjakan dalam 104T (CPI = 1,04). Pada kondisi ideal CPI akan harga 1.

Masalah-masalah pada Pipeline

Dengan adanya persyaratan bahwa setiap instuksi yang berdekatan harus tidak saling bergantung, maka ada kemungkinan terjadinya situasi dimana pipeline gagal dilaksanakan (instuksi berikutnya tidak bisa dilaksanakan).Situasi ini disebut Hazards.Hazards mengurangi performansi dari CPU dimana percepatan ideal tidak dapat dicapai.

Ada 3 kelompok Hazards : 1. Structural Hazards muncul dari konflik resource sistem yaitu ketika hardware tidak dapat mensuport semua kemungkinan kombinasi pelaksanaan instruksi. 2. Data Hazards muncul ketika data untuk suatu instruksi tergantung pada hasil instruksi sebelumnya.
3.

Control Hazards muncul pada pelaksanaan instruksi yang mengubah PC (contoh : branch).Adanya Hazards menyebabkan pipeline terhambat (stalled). Tidak ada instruksi baru yang dijemput sampai hambatan itu selesai. Ini berarti instruksi-instruksi selanjutnya akan ditunda pula penjemputannya.

1.6.3

Kelebihan dan Keuntungannya Pipelining tidak membantu dalam semua kasus. Ada beberapa

kemungkinan kerugian. Pipa instruksi dikatakan sepenuhnya pipelined jika dapat menerima instruksi baru setiap clock cycle. Sebuah pipa yang tidak sepenuhnya pipelined telah menunggu siklus yang menunda kemajuan pipa. 1. Waktu siklus prosesor berkurang, sehingga meningkatkan tingkat instruksi-isu dalam kebanyakan kasus. 2. Beberapa combinational sirkuit seperti penambah atau pengganda dapat dibuat lebih cepat dengan menambahkan lebih banyak sirkuit. Jika pipelining digunakan sebagai pengganti, hal itu dapat menghemat sirkuit vs combinational yang lebih kompleks sirkuit.

Kekurangan Pipelining: 1. Non-pipelined prosesor hanya menjalankan satu instruksi pada satu waktu. Hal ini untuk mencegah penundaan cabang (yang berlaku, setiap cabang tertunda) dan masalah dengan serial instruksi dieksekusi secara bersamaan.Akibatnya desain lebih sederhana dan lebih murah untuk diproduksi.

2. Instruksi latency di non-pipelined prosesor sedikit lebih rendah daripada dalam pipelined setara. Hal ini disebabkan oleh fakta bahwa sandal jepit ekstra harus ditambahkan ke jalur data dari prosesor pipelined. 3. Non-pipelined prosesor akan memiliki instruksi yang stabil bandwidth. Kinerja prosesor yang pipelined jauh lebih sulit untuk meramalkan dan dapat bervariasi lebih luas di antara program yang berbeda.

BAB III Kesimpulan


Setiap komputer memiliki cara kerja atau instruksi berbeda-beda. Salah satunya SISD (Single Instruction Single Data). SISD adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Arsitektur von Neumann atau Mesin Von Neumann adalah arsitektur yang diciptakan oleh John Von Neuman (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini.

Arsitektur ini banyak digunakan oleh hampir semua komputer karena arsitektur ini menggunakan satu processor saja, tetapi processor sekarang menggunakan 1 processor tetapi banyak core intinya. Sehingga processor sekarang mempunyai arsitektur SISD yang di tambah dengan core inti, yang membuat mengeksekusi instruksi begitu cepat.