Kamis, 11 Januari 2018

Klasifikasi Komputer Pipeline

Dalam komputer, pipeline adalah satu set dari elemen pemrosesan data dihubungkan secara seri, sehingga hasil keluaran dari satu elemen adalah masukkan bagi elemen berikutnya. Elemen-elemen dari sebuah pipeline sering dijalankan secara paralel.

Contoh pipeline dalam komputer adalah :
a.   Pipeline instruksi, biasanya digunakan di unit pemroses sentral agar instruksi-instruksi dapat dijalankan dalam satu waktu dalam satu sirkuit digital. Biasanya sirkuitnya dibagi dalam beberapa tahap, termasuk decode instruksi, aritmetika dan tahap-tahap penjemputan data dari register, dimana setiap tahap melakukan satu instruksi dalam satu waktu.
b.  Pipeline grafis, sering ditemukan dalam sebagian besar unit pemrosesan grafis, yang terdiri dari berbagai unit aritmatik atau unit pemroses sentral lengkap, yang menerapkan berbagai macam tahap dari operasi render yang umum (seperti proyeksi perspektif, kalkulasi warna dan pencahayaan, primitif gambar, dan sebagainya).
c.  Pipeline perangkat lunak, dimana keluaran dari suatu program langsung dipakai oleh program lain sebagai masukkan sehingga dapat langsung diproses.

Pipeline dapat kita klasifikasikan menurut fungsi dan konfigurasinya. Secara fungsional, mereka diklasifikasikan menjadi tiga kelompok pokok yaitu pipelining aritmatika, instruksi dan prosesor. Ramamoorthy dan Li (1977) mengajukan tiga skema untuk mengklasifikasikan pipeline menurut konfigurasi dan strategi kendalinya yaitu unifungsi atau multifungsi, statis atau dinamis, dan skalar atau vektor.

Klasifikasi Berdasarkan Fungsi
-   Pipelining aritmatika. Proses segmentasi fungsi dari ALU dari sistem yang muncul dalam katagori ini. Suatu contoh dari fungsi pipeline aritmatika diberikan dalam Bagian 9.7.
-   Pipelining instruksi. Dalam suatu komputer nonpipeline, CPU bekerja melalui suatu siklus yang berkesinambungan dari fetch-decode-eksekusi untuk semua instruksinya. Proses fetch suatu instruksi tidak akan dimulai sampai eksekusi instruksi sebelumnya selesai. Untuk mem-pipeline fungsi ini, instruksi-instruksi yang berdampingan di-fetch dari memori ketika instruksi Yang sebelumnya di-decode dan dijalankan. Proses pipelining instruksi, disebut juga instruction lihat ke-muka (look-ahead), mem-fetch instruksi secara berurutan. Dengan demikian, jika suatu instruksi menyebabkan percabangan keluar dari urutan itu maka Pipe akan dikosongkan dari seluruh instruksi yang telah di-fetch sebelumnya dan instruksi percabangan (branched-to-instruction) tersebut di-fetch. Proses Pipelining instruksi dikerjakan pada hampir semua komputer berkemampuan tinggi (high-perfomance).
-     Pipelining prosesor. Sewaktu stage dari suatu pipeline merupakan prosesor aktual dan latch-latch saling berbagi memori antara prosesor-prosesor tersebut maka pipeline itu disebut sebagai pipeline prosesor. Dalam pipeline ini, setiap prosesor mempunyai suatu tugas tertentu yang akan dijalankan pada aliran data, seperti diperlihatkan pada Gambar 9-9. Pipelining banyak prosesor (multiple processor) merupakan konsep yang relatif baru dan belum umum.

Klasifikasi Berdasarkan Konfigurasi
Unifungsi vs multifungsi. Kemampuan suatu pipeline menjalankan hanya satu jenis pokok operasi disebut sebagai pipeline unifungsi. Misalnya, perkalian floating-point mensyaratkan pipeline agar juga menjalankan operasi yang sama pada setiap kelompok input. Jika pipeline dapat menjalankan fungsi-fungsi yang berbeda maka disebut sebagai pipeline multifungsi.




Fungsi-fungsi yang berbeda itu bisa dijalankan baik pada waktu yang bersaman ataupun berbeda, dengan menghubungkan subkelompok-subkelompok stage yang berbeda dalam pipeline. Pipeline disusun seperlunya sesuai dengan nilai input kendali tambahan.

Statis vs dinamis. Ketika instruksi-instruksi yang berjenis sama akan dijalankan secara bersamaan waktunya maka digunakan pipeline statis. Pipeline ini dapat berupa pipeline fungsional maupun multifungsional tetapi mungkin mengasumsikan hanya satu konfigurasi fungsional pada suatu waktu. Suatu pipeline multifungsi statis dapat bekerja paling baikjika fungsi yang akan dijalankan tidak sering berubah. Antara perubahan, pipeline terlihat sebagai pipeline unifungsi dan mengulangi operasi yang sama berulang-ulang. Sebelum mengganti fungsi tersebut, kelompok input terakhir dari fungsi sebelumnya harus benar-benar telah melewati pipeline dan proses ini disebut sebagai mengairi pipa (draining the pipe). Kemudian pipeline dikonfigurasikan untuk fungsi yang baru dan input yang baru boleh masuk ke dalam pipe.

Dengan pipeline dinamis, beberapa konfigurasi fungsional dapat muncul sekaligus. Hal ini berarti harus digunakan pipeline multifungsional. Dalam kasus ini, konfigurasi pipe berubah-ubah secara konstan, tergantung pada data mana untuk fungsi yang mana pada stage yang mana untuk setiap penangguhan clock. Pipeline dinamis memerlukan kendali yang sangat kompleks dan mekanisme perangkai untuk mengkonfigurasikan pipe bagi input-input tertentu. Untuk alasan ini, pipelining aktual tidak berada di bawah kendali programer melainkan dibangun ke dalam arsitektur mesin tersebut. Jika suatu pipeline dalam sebuah sistem perlu mengubah fungsinya secara berkala maka harga implementasi pipeline dinamis melebihi pertimbangan harga dari waktu menganggur (idle time) yang dihasilkan dari proses draining pipeline statis secara terus menerus.



Skalar vs vektor. Suatu pipeline skalar memproses serangkaian operasi skalar pada operand skalar (yang berhubungan dengan masing-masing angka bukannya vektor) seperti ditunjukkan oleh program. Salah satu contoh berupa operasi ADD dalam loop FOR. Pipeline vektor dirancang untuk memproses instruksi vektor dengan menggunakan operand vektor. Komputer yang mempunyai instruksi-instruksi vektor disebut sebagai prosesor vektor dan akan dibahas pada Bab 10. Contoh pipeline di bab ini dapat digunakan sebagai pipeline skalar atau sebagai bagian dari pipeline vektor.

Konfigurasi Central Processing Unit (CPU)


Arsitektur dasar mesin tipe von neumann menjadi kerangka referensi pada komputer digital umum (general-purpose) modern. Tiga bagian fundamental tersebut adalah :
1. Unit pengolahan pusat (CPU)
2. Unit masukan/keluaran (I/O)
3. Unit memori


Sebuah mesin tipe von Neumann

Program disimpan dalam unit memori utama yang berhadapan dengan piranti I/O melalui CPU. CPU membaca dari atau menulis ke memori, dengan mengirimkan alamat word ke unit memori melalui bus address kemudian menerima atau mengirimkan data melalui bus data. Data dipertukarkan antara CPU dan Unit I/O juga dengan menggunakan bus data. Operasi disinkronisasikan oleh dua bus control dengan sinyal kendali yang dikirimkan oleh CPU dan sinyal acknowledgment serta sinyal interupsi yang diterima oleh CPU.
   
   Eksekusi program yang telah tersimpan secara logis adalah sebagai berikut:
1.   CPU mem-fetch instruksi berikutnya dari memori
2.   CPU men-decode instruksi
3.  Berdasarkan instruksi, CPU mengeluarkan sinyal kendali untuk mem-fetch operand lainnya jika diperlukan dan kemudian akan melaksanakan salah satu tindakan berikut :
a.   Melakukan operasi aritmatika atau logika
b.   Menyimpan sebuah hasil ke dalam memori
c.   Membaca sebuah hasil dari atau menuliskan hasil ke piranti I/O.
4. CPU kembali ke langkah pertama dan melanjutkan proses hingga program diberhentikan

ORGANISASI CPU


Gambar diatas disebut jalur data dan berisi register-register (terutama 1 sampai 32), ALU (Arithmetic Logic Unit) dan beberapa bus yang menghubungkan bagian-bagian tersebut. Register-register tersebut melengkapi dua register untuk input ALU, yang dalam gambar diberi label A dan B. Register-register ini menyimpan input ALU sementara ALU menjalankan fungsi perhitungan.

KUMPULAN REGISTER
Register dari sebuah komputer secara kolektif disebut kumpulan register (register-set).

Diagram Blok Unit Pengolahan Pusat

Beberapa register mungkin mempunyai jenis yang sama, sedangkan yang lainnya mungkin berbeda. Namun, beberapa register berlaku umum pada hampir semua komputer umum.
·     Register Program Counter (PC)
·     Register Instruksi (IR)
·     Register umum (General Purpose) :
-PSW (Program Status Word)
-MAR (Memory Address Register)
-MBR (Memory Buffer Register)
-Accumulator
-Register flag

Kumpulan register pada mikroprosesor intel 8085

(a)  Internal Registers

(b) Register pair organization

Pada gambar (a), register A berfungsi sebagai sebuah akumulator 8 bit. CPU juga mencakup sebuah program counter (PC), sebuah stack pointer (SP), sebuah flag register dan enam register pengalamatan 8 bit.
Pada gambar (b), register 8 bit biasanya digunakan secara berpasangan. Register A bersama-sama dengan flag register, membentuk program status word (PSW). Tiga pasangan lainnya digunakan untuk tujuan pengalamatan, pasangan H merupakan pasangan yang sangat umum digunakan. Pasangan ini bisa dirujuk secara bersama-sama atau terpisah, yang menyebabkan tersedianya berbagai variasi intruksi.

Format Instruksi
Suatu Instruksi merupakan suatu tata cara yang digunakan oleh komputer untuk menyatakan operasi seperti ADD, STORE, LOAD, MOVE, dan BRANCH serta untuk menentukan lokasi data dimana suatu operasi akan dikerjakan. Kumpulan seluruh instruksi tersebut, disebut sebagai kumpulan instruksi.

Format Alamat


Addr1 = Alamat operand pertama
Addr2 = Alamat operand kedua
Addr3 = Alamat dimana hasil operasi disimpan

Mode Pengalamatan
Suatu variasi mode pengalamatan (addressing mode) dapat digunakan untuk menentukan suatu alamat tempat untuk dimana operand akan di fetch. Beberapa teknik ini dapat meningkatkan kecepatan pelaksanaan instruksi dengan menurunkan jumlah referensi pada memori utama dan meningkatkan jumlah referensi pada register kecepatan tinggi. Mode pengalamatan ini menjabarkan suatu aturan untuk menginterpretasikan atau memodifikasi field alamat dari instruksi sebelum operand direferensikan. Beberapa mode pengalamatan umum diantaranya adalah :

*OPR mewakili sebuah register untuk menyimpan operand yang akan digunakan sewaktu instruksi dijalankan.

ARITHMETIC AND LOGIC UNIT (ALU)
Ide mengenai satu adder umum yang mampu menambahkan dua register bersama-sama dan menyimpan hasilnya dalam register lainnya merupakan prinsip yang mendasar pada ALU. Sehingga ALU didefinisikan sebagai sebuah unit yang berisi sirkuit untuk menjalankan sekumpulan operasi mikro aritmatika dan logika.


Fungsi Aritmatika pada sebuah ALU biasanya mencakup integer, floating-point (real) dan desimal berkode biner. Disini operasi yang terjadi adalah penambahan, pengurangan, perkalian dan pembagian.
Fungsi Logika pada sebuah ALU lebih sederhana. Untuk segala operasi logika yang ingin diterapkan, maka hanya perlu memuat sejumlah n gerbang logika tertentu untuk operasi tersebut (satu untuk setiap pasangan bit input).
Selain itu pula ALU dapat digunakan sebagai Pergeseran, dengan menerapkan sirkuit geser kombinasional yang dikenal sebagai skalar posisi. Karena kita ingin menjalankan pergeseran bersamaan dengan fungsi aritmatika atau logika, seperti pada perkalian atau pengepakan string, maka akan lebih efisien untuk men-set penggeser diluar ALU. Dengan cara ini dapat ditambahkan dua angka dan menggeser seluruh hasil dalam satu langkah daripada meneruskan hasilnya ke input.

CONTROL LOGIC UNIT (CLU)
CLU pada komputer memasukkan informasi tentang instruksi dan mengeluarkan baris kendali yang diperlukan untuk mengaktifkan operasi-mikro yang semestinya. CLU terbentuk atas sebuah prosesor instruksi (IP atau instruction processor) yang berfungsi untuk mengendalikan fetch, perhitungan alamat dan siklus interupsi, kemudian prosesor aritmatika (AP atau arithmatic processor) yang berfungsi untuk mengendalikan siklus eksekusi bagi operasi aritmatika dan logika.

KONFIGURASI CPU
Komponen CPU dapat tersusun dalam berbagai cara, sangat tergantung pada jumlah bus data internal yang digunakan. Dua contoh diantaranya adalah Organisasi bus tunggal dan organisasi triple bus.
-       Organisasi Bus Tunggal


ALU memerlukan input register Y dan register Z secara bersamaan. Dengan hanya sebuah bus data tunggal, sebuah operand akan disimpan dalam Y dan yang lainnya dapat disimpan dalam bus. Sewaktu ALU menghitung hasilnya, input tersebut harus tetap konstan pada bus. Karena itu, kadang-kadang hasilnya disimpan dalam Z sampai operasi selesai dan kemudian ditransfer melalui bus ke tempat dimana harus disimpan. Dalam hubungan yang sama, CLU memerlukan informasi dari register khusus (specialpurpose) secara bersamaan untuk menghasilkan fungsi pengendalian yang tepat. Oleh karena itu, register-register tersebut dihubungkan secara langsung ke CLU selain dihubungkan dengan bus data untuk komunikasi umum.

-       Organisasi triple bus



Penggunaan tiga bus data internal, seperti gambar diatas akan melonggarkan beberapa batasan yang dibebankan oleh susunan bus-tunggal. Dalam hal ini, bus-bus yang terpisah dapat digunakan untuk dua input ALU termasuk juga untuk output ALU. Jika register dari kumpulan register adalah edge-trigerred, maka akan mungkin untuk menjalankan jenis operasi-mikro R1  (R2) + (R3) pada satu sinyal waktu.

Selasa, 03 Oktober 2017

TOPOLOGI JARINGAN KOMUNIKASI KOMPUTER

                             ''TOPOLOGI JARINGAN KOMUNIKASI KOMPUTER''

Pada saat kita ingin melakukan instalasi jaringan komputer, terlebih dahulu kita harus memperhatikan bentuk atau struktur topologi yang kita gunakan.
Topologi jaringan merupakan suatu bentuk atau struktur jaringan yang menghubungkan antar komputer satu dengan yang lain dengan menggunakan media kabel maupun nirkabel. Dalam instalasi jaringan, kita harus benar-benar memperhatikan jenis, kelebihan dan kekurangan masing-masing topologi jaringan yang akan digunakan. Berikut jenis-jenis topologi jaringan beserta kelebihan dan kekurangannya.

1. Topologi Bus

Topologi bus bisa dibilang topologi yang cukup sederhana dibanding topologi yang lainnya. Topologi ini biasanya digunakan pada instalasi jaringan berbasis fiber optic, kemudian digabungkan dengan topologi star untuk menghubungkan client atau node.
Topologi bus hanya menggunakan sebuah kabel jenis coaxial disepanjang node client dan pada umumnya, ujung kabel coaxial tersebut biasanya diberikan T konektor sebagai kabel end-to-end.

Kelebihan Topologi Bus :
v Biaya instalasi bisa dibilang sangat murah karena hanya menggunakan sedikit kabel.
v Penambahan client / workstation baru dapat dilakukan dengan mudah.
v Topologi yang sangat sederhana dan mudah di aplikasikan

Kekurangan Topologi Bus :
v Jika salah satu kabel pada topologi jaringan putus atau bermasalah, hal tersebut dapat mengganggu komputer workstation / client yang lain.
v Proses sending (mengirim) dan receiving (menerima) data kurang efisien, biasanya sering terjadi tabrakan data pada topologi ini.
v Topologi yang sangat jadul dan sulit dikembangkan.

2. Topologi Star

Topologi star atau bintang merupakan salah satu bentuk topologi jaringan yang biasanya menggunakan switch / hub untuk menghubungkan client satu dengan client yang lain.

Kelebihan Topologi Star :
v Apabila salah satu komputer mengalami masalah, jaringan pada topologi ini tetap berjalan dan tidak mempengaruhi komputer yang lain.
v Bersifat fleksibel
v Tingkat keamanan bisa dibilang cukup baik daripada topologi bus.
v Kemudahan deteksi masalah cukup mudah jika terjadi kerusakan pada jaringan.

Kekurangan Topologi Star :
v Jika switch / hub yang notabenya sebagai titik pusat mengalami masalah, maka seluruh komputer yang terhubung pada topologi ini juga mengalami masalah.
v Cukup membutuhkan banyak kabel, jadi biaya yang dikeluarkan bisa dibilang cukup mahal.
Jaringan ini sangat tergantung pada terminal pusat.

3. Topologi Ring

Topologi ring atau cincin merupakan salah satu topologi jaringan yang menghubungkan satu komputer dengan komputer lainnya dalam suatu rangkaian melingkar, mirip dengan cincin. Biasanya topologi ini hanya menggunakan LAN-card untuk menghubungkan komputer satu dengan komputer lainnya.

Kelebihan Topologi Ring :
v Memiliki performa yang lebih baik daripada topologi bus.
v Mudah diimplementasikan.
v Konfigurasi ulang dan instalasi perangkat baru bisa dibilang cukup mudah.
v Biaya instalasi cukup murah

Kekurangan Topologi Ring :
v Kinerja komunikasi dalam topologi ini dinilai dari jumlah / banyaknya titik atau node.
v Troubleshooting bisa dibilang cukup rumit.
v Jika salah satu koneksi putus, maka koneksi yang lain juga ikut putus.
v Pada topologi ini biasanya terjadi collision (tabrakan data).

4. Topologi Mesh

Topologi mesh merupakan bentuk topologi yang sangat cocok dalam hal pemilihan rute yang banyak. Hal tersebut berfungsi sebagai jalur backup pada saat jalur lain mengalami masalah.

Kelebihan Topologi Mesh :
v Jalur pengiriman data yang digunakan sangat banyak, jadi tidak perlu khawatir akan adanya collision (tabrakan data).
v Besar bandwidth yang cukup lebar.
v Keamanan pada topologi ini bisa dibilang sangat baik.

Kekurangan Topologi Mesh :
v Proses instalasi jaringan pada topologi ini sangatlah rumit.
v Membutuhkan banyak kabel.
v Memakan biaya instalasi yang sangat mahal, dikarenakan membutuhkan banyak kabel.

5. Topologi Peer to Peer

Topologi peer to peer merupakan topologi yang sangat sederhana dikarenakan hanya menggunakan 2 buah komputer untuk saling terhubung. Pada topologi ini biasanya menggunakan satu kabel yang menghubungkan antar komputer untuk proses pertukaran data.

Kelebihan Topologi Peer to Peer :
v Biaya yang dibutuhkan sangat murah.
v Masing-masing komputer dapat berperan sebagai client maupun server.
v Instalasi jaringan yang cukup mudah.

Kekurangan Topologi Peer to Peer :
v Keamanan pada topologi jenis ini bisa dibilang sangat rentan.
v Sulit dikembangkan.
v Sistem keamanan di konfigurasi oleh masing-masing pengguna.
v Troubleshooting jaringan bisa dibilang rumit.

6. Topologi Linier

Topologi linier atau biasaya disebut topologi bus beruntut. Pada topologi ini biasanya menggunakan satu kabel utama guna menghubungkan tiap titik sambungan pada setiap komputer.

Kelebihan Topologi Linier :
v Mudah dikembangkan.
v Membutuhkan sedikit kabel.
v Tidak memperlukan kendali pusat.
v Tata letak pada rangkaian topologi ini bisa dibilang cukup sederhana.

Kekurangan Topologi Linier :
v Memiliki kepadatan lalu lintas data yang bisa dibilang cukup tinggi.
v Keamanan data kurang baik.

7. Topologi Tree

Topologi tree atau pohon merupakan topologi gabungan antara topologi star dan juga topologi bus. Topologi jaringan ini biasanya digunakan untuk interkoneksi antar sentral dengan hirarki yang berbeda-beda.

Kelebihan Topologi Tree :
v Susunan data terpusat secara hirarki, hal tersebut membuat manajemen data lebih baik dan mudah.
v Mudah dikembangkan menjadi jaringan yang lebih luas lagi.

Kekurangan Topologi Tree :
v Apabila komputer yang menduduki tingkatan tertinggi mengalami masalah, maka komputer yang terdapat dibawahnya juga ikut bermasalah
v Kinerja jaringan pada topologi ini terbilang lambat.
v Menggunakan banyak kabel dan kabel terbawah (backbone) merupakan pusat dari teknologi ini.

8. Topologi Hybrid

Topologi hybrid merupakan topologi gabungan antara beberapa topologi yang berbeda. Pada saat dua atau lebih topologi yang berbeda terhubung satu sama lain, disaat itulah gabungan topologi tersebut membentuk topologi hybrid.

Kelebihan Topologi Hybrid :
v Freksibel
v Penambahan koneksi lainnya sangatlah mudah.

Kekurangan Topologi Hybrid :
v Pengelolaan pada jaringan ini sangatlah sulit.
v Biaya pembangunan pada topologi ini juga terbilang mahal.
v Instalasi dan konfigurasi jaringan pada topologi ini bisa dibilang cukup rumit, karena terdapat topologi yang berbeda-beda.