Rabu, 02 Juli 2014

Sistem Bus

            Komputer  tersusun atas  beberapa  komponen penting  seperti  CPU, memori,perangkat I/O. Setiap komponen saling  berhubungan membentuk  kesatuan fungsi. Sistem  bus  adalahpenghubung  bagi  keseluruhan komponen komputer  dalam  menjalankan tugasnya. Transfer  data antar komponen komputer sangatlah mendominasi kerja suatu komputer. Data atau program yang tersimpan dalam  memori  dapat  diakses  dan dieksekusi  CPU  melalui  perantara  bus, begitu juga kita dapat melihat hasil eksekusi melalui monitor juga menggunakan sistem bus.  
         
            Era  saat  ini  memerlukan saluran data  atau bus  yang  handal. Kecepatan komponenpenyusun komputer tidak akan berarti kalau tidak diimbangi kecepatan dan manajemen bus yangbaik. Trend mikroprosesor  saat  ini  adalah melakukan pekerjaan secara  paralel  dan programdijalankan secara multitasking menuntut sistem bus tidak hanya lebar tapi juga cepat.            
            Dalam  bab ini  akan kita  pelajari  bagaimana  interkoneksi  komponen sistem  komputer dalam  menjalankan fungsinya, interkoneksi  bus  dan juga  pertimbangan – pertimbangan perancangan bus. Bagian akhir akan disajikan contuh – contoh bus yang berkembang saat ini. 
7.1 Struktur Interkoneksi
            Komputer tersusun atas komponen – komponen atau modul – modul (CPU, memori dan I/O) yang saling berkomunikasi. Kompulan lintasan atau saluran berbagai modul disebut struktur interkoneksi. Rancanagan struktur  interkoneksi  sangat  bergantung  pada  jenis  dan karakteristik pertukaran datanya. 
Gambar  7.1 menyajikan jenis  pertukaran data  yang  diperlukan oleh modul  – modul
penyusun komputer :
• Memori :  Memori  umumnya  terdiri  atas  N word memori dengan panjang yang sama. Masing – masing word diberi alamat numerik yang unik (0, 1, 2, …N-1). Word dapat dibaca maupun ditulis pada memori  dengan kontrol  Read dan Write. Lokasi  bagi  operasi  dispesifikasikan oleh sebuah alamat.  
• Modul I/O :  Operasi modul I/O adalah pertukaran data dari dan ke dalam komputer. Berdasakan pandangan internal, modul  I/O  dipandang  sebagai  sebuah memori  dengan operasi  pembacaan dan penulisan. Seperti  telah dijelaskan pada  bab 6 bahwa  modul  I/O  dapat  mengontrol  lebih dari sebuah perangkat peripheral. Modul I/O juga dapat mengirimkan sinyal interrupt. 
• CPU :  CPU  berfungsi  sebagai  pusat  pengolahan dan eksekusi  data  berdasarkan routine  – routine program  yang  diberikan padanya. CPU  mengendalikan seluruh  sistem  komputer  sehingga sebagai  konsekuensinya  memiliki  koneksi  ke  seluruh modul  yang  menjadi  bagian sistem komputer.  

            Dari  jenis  pertukaran data  yang  diperlukan modul  – modul  komputer, maka  struktur interkoneksi harus mendukung perpindahan data berikut :
Memori ke CPU : CPU melakukan pembacaan data maupun instruksi dari memori. 
CPU ke Memori : CPU melakukan penyimpanan atau penulisan data ke memori.
I/O ke CPU : CPU membaca data dari peripheral melalui modul I/O. 
CPU ke I/O : CPU mengirimkan data ke perangkat peripheral melalui modul I/O. 
I/O ke Memori atau dari Memori : digunakan pada sistem DMA. 
Sampai  saat  ini  terjadi  perkembangan struktur  interkoneksi, namun yang  banyak
digunakan saat  ini  adalah sistem  bus. Sistem  bus  ada  yang  digunakan secara  tunggal  dan ada secara jamak, tergantung karakteristik sistemnya. 


7.2 Interkoneksi Bus
              Bus  merupakan lintasan komunikasi  yang  menghubungkan dua  atau lebih komponen komputer. Sifat  penting  dan merupakan syarat  utama  adalah bus  adalah media  transmisi  yang  dapat digunakan bersama oleh sejumlah perangkat yang terhubung padanya. Karena  digunakan bersama, diperlukan aturan main agar  tidak  terjadi  tabrakan data  atau kerusakan data  yang  ditransmisikan. Walaupun digunakan bersama  namun dalam  satu waktu hanya ada sebuah perangkat yang dapat menggunakan bus. 

Struktur Bus
           Sebuah bus biasanya terdiri atas beberapa saluran. Sebagai contoh bus data terdiri atas 8 saluransehingga  dalam  satu waktu dapat  mentransfer  data  8 bit. Secara  umum  fungsi  saluran bus dikatagorikan dalam  tiga  bagian, yaitu saluran data, saluran alamat  dan saluran kontrol, seperti terlihat pada gambar 7.2.


Saluran data  (data bus)  adalah lintasan bagi  perpindahan data  antar  modul. Secara
kolektif  lintasan ini  disebut  bus  data. Umumnya  jumlah saluran terkait  dengan panjang  word
misalnya  8, 16, 32 saluran dengan tujuan agar  mentransfer  word dalam  sekali  waktu. Jumlah
saluran dalam bus data dikatakan lebar bus, dengan satuan bit, misal lebar bus 16 bit. 
           Saluran alamat  (address  bus)  digunakan untuk  menspesifikasi  sumber  dan tujuan data pada  bus  data. Saluran ini  digunakan untuk  mengirim  alamat  word pada  memori  yang  akan diakses  CPU. Juga  digunakan untuk  saluran alamat  perangkat  modul  komputer  saat  CPU mengakses  suatu modul. Perlu diketahui, semua  peralatan yang  terhubung  dengan sistem komputer, agar dapat diakses harus memiliki alamat. Semisal mengakses port I/O, maka port I/O harus memiliki alamat hardware-nya. 
          Saluran kontrol  (control  bus)  digunakan untuk  mengontrol  bus  data, bus  alamat  dan seluruh modul yang ada. Karena bus data dan bus alamat digunakan oleh semua komponen maka diperlukan suatu mekanisme kerja yang dikontrol melalui bus kontrol ini. Sinyal – sinyal kontrol terdiri  atas  sinyal  pewaktuan dan sinyal  – sinyal  perintah. Sinyal  pewaktuan menandakan validitas data dan alamat, sedengkan sinyal perintah berfungsi membentuk suatu operasi. Secara umum saluran kontrol meliputi : 
Memory Write, memerintahkan data pada bus akan dituliskan ke dalam lokasi alamat. 
Momory Read memerintahkan data dari lokasi alamat ditempatkan pada bus data. 
I/O Write, memerintahkan data pada bus dikirim ke lokasi port I/O. 
I/O Read, memerintahkan data dari port I/O ditempatkan pada bus data. 
•  Transfer  ACK, menunjukkan data  telah diterima  dari  bus  atau data  telah ditempatkan pada bus. 
Bus Request, menunjukkan bahwa modul memerlukan kontrol bus. 
•  Bus  Grant, menunjukkan modul  yang  melakukan request  telah diberi  hak  mengontrol
bus. 
Interrupt Request, menandakan adanya penangguhan interupsi dari modul. 
Interrupt ACK, menunjukkan penangguhan interupsi telah diketahui CPU. 
Clock, kontrol untuk sinkronisasi operasi antar modul. 
Reset, digunakan untuk menginisialisasi seluruh modul. 
Secara  fisik  bus  adalah konduktor  listrik  paralel  yang  menghubungkan modul  -modul.
Konduktor  ini  biasanya  adalah saluran utama  pada  PCB  motherboard dengan layout  tertentu sehingga didapat fleksibilitas penggunaan. Untuk modul I/O biasanya dibuat slot bus yang mudah dipasang dan dilepas, seperti slot PCI dan ISA. Sedangkan untuk chips akan terhubung melalui pinnya.  
Prinsip operasi bus adalah sebagai berikut. Operasi pengiriman data ke modul lainnya : 
1. Meminta penggunaan bus. 
2. Apabila telah disetujui, modul akan memindahkan data yang diinginkan ke modul yang dituju. 
Operasi meminta data dari modul lainnya :
1. Meminta penggunaan bus. 
2. Mengirim  request  ke  modul  yang  dituju melalui  saluran kontrol  dan alamat  yang
sesuai. 
3. Menunggu modul yang dituju mengirimkan data yang diinginkan. 


Hierarki Multiple Bus
Bila  terlalu banyak  modul  atau perangkat  dihubungkan pada  bus  maka  akan terjadi
penurunan kinerja, yang disebabkan oleh :
• Semakin besar delay propagasi untuk mengkoordinasikan penggunaan bus. 
• Antrian penggunaan bus semakin panjang. 
• Dimungkinkan habisnya kapasitas transfer bus sehingga memperlambat data. 
Antisipasi  dan solusi  persoalan di  atas  adalah penggunaan bus  jamak  yang  hierarkis.
Modul – modul dikalasifikasikan berdasarkan kebutuhan terhadap lebar dan kecepatan bus. Bus biasanya terdiri atas bus lokal, bus sistem, dan bus ekspansi. Gambar 8.3 dan gambar 8.4 berikut menyajikan contoh hierarki penggunaan bus jamak. 
Terlihat  pada  gambar  7.3 dan gambar  7.4, Prosesor, cache  memori  dan memori  utama
terletak  pada  bus  tersendiri  pada  level  tertinggi  karena  modul  – modul  tersebut  memiliki
karakteristik  pertukaran data  yang  tinggi. Pada  arsitektur  berkinerja  tinggi, modul  – modul  I/O
diklasifikasikan menjadi  dua, yaitu yang  memerlukan transfer  data  berkecepatan tinggi  dan
berkecepatan rendah. Modul dengan transfer data berkecepatan tinggi disambungkan dengan bus berkecepatan tinggi  pula, sedangkan modul  yang  tidak  memerlukan transfer  data  cepat
disambungkan pada bus ekspansi. 
Keuntungan hierarki bus jamak kinerja tinggi pada gambar 7.4 adalah bus berkecepatan
tinggi  lebih terintegrasi  dengan prosesor. Perubahan pada  arsitektur  prosesor  tidak  begitu
mempengaruhi kinerja bus.

7.3 Elemen Perancangan Bus
            Saat ini terdapat banyak implementasi sistem bus, tetapi parameter dasar perancangan bus dapat  diklasifikasikan berdasarkan jenis  (dedicated    dan   mulitiplexed), metode  arbitrasi
(tersentralisasi dan terdistribusi), timing (sinkron dan tak sinkron), lebar bus (lebar address dan
lebar data) dan jenis transfer datanya(read, write, read-modify-write, read-alter-writeblock).  
Tujuan yang  hendak  dicapai  dalam  perancangan adalah bagaimana  bus  dapat  cepat
menghantarkan data dan efisiensinya tinggi. Intinya karakteristik pertukaran data dan modul yang terkait merupakan pertimbangan utama dalam perancangan bus. 


Jenis Bus
             Berdasar  jenis  busnya, bus  dibedakan menjadi  bus  yang  khusus  menyalurkan data  tertentu, misalnya  paket  data  saja, atau alamat  saja, jenis  ini  disebut  dedicated bus. Namun apabila  busdilalukan informasi  yang  berbeda  baik  data, alamat  maupun sinyal  kontrol  dengan metode mulipleks data maka bus ini disebut multiplexed bus
             Keuntungan mulitiplexed bus  adalah hanya  memerlukan saluran sedikit  sehingga  dapat menghemat tempat, namun kerugiannya adalah kecepatan transfer data menurun dan diperlukan mekanisme yang komplek untuk mengurai data yang telah dimulitipleks. 
Saat  ini  yang  umum, bus  didedikasikan untuk  tiga  macam, yaitu bus  data, bus  alamat  dan bus kontrol. 


Metode Arbitrasi
             Terdapat  dua  macam  metode  arbitrasi, yaitu tersentral  dan terdistribusi. Pada  metode tersentral diperlukan pengontrol bus sentral atau arbiter yang bertugas mengatur penggunaan bus oleh modul. Arbiter  bisa  suatu modul  atau bagian fungsi  CPU. Sedangkan dalam  metode terdistribusi, setiap modul memiliki logika pengontrol akses (access control logic) yang berfungsi mengatur  pertukaran data  melalui  bus. Kedua  metode  arbitrasi  intinya  menugaskan suatu perangkat bisa modul I/O ataupun CPU bertindak sebagai master kontrol pertukaran. 


Timing 
             Metode  pewaktuan sinkron terjadinya  event  pada  bus  ditentukan oleh sebuah pewaktu (clock). Sebuah transmisi 1 – 0 disebut siklus waktu atau siklus bus dan menentukan besarnya slot waktu. Semua perangkat modul pada bus dapat membaca atau pengetahui siklus clock. Biasanya satu siklus  untuk  satu event. Model  ini  mudah diimplementasikan dan cepat  namun kurang fleksibel menangani peralatan yang beda kecepatan operasinya. Biasanya digunakan untuk modul – modul  tertentu yang  sudah jelas  karakteristiknya. Contoh pewaktuan sinkron disajikan pada gambar 7.5.


Dalam  pewaktuan  asinkron  memungkinkan kerja  modul  yang  tidak  serempak
kecepatannya. Dalam  pewaktuan asinkron, event  yang  terjadi  pada  bus  tergantung  event
sebelumnya  sehingga  diperlukan sinyal  – sinyal  validasi  untuk  mengidentifikasi  data  yang
ditransfer. Sistem  ini  mampu menggabungkan kerja  modul  – modul  yang  berbeda  kecepatan maupun teknologinya, asalkan aturan transfernya sama. Gambar 7.6 memperlihatkan pewaktuan asinkron.


Lebar Bus 
            Lebar  bus  sangat  mempengaruhi  kinerja  sistem  komputer. Semakin lebar  bus  maka semakin besar data yang dapat ditransfer sekali waktu. Semakin besar bus alamat, akan semakin banyak range lokasi yang dapat direfensikan. 


Jenis Transfer Data 
           Dalam sistem komputer, operasi transfer data adalah pertukaran data antar modul sebagai tindak  lanjut  atau pendukung  operasi  yang  sedang  dilakukan. Saat  operasi  baca  (read), terjadi pengambilan data  dari  memori  ke  CPU, begitu juga  sebaliknya  pada  operasi  penulisan maupun operasi – operasi kombinasi. Bus harus mampu menyediakan layanan saluran bagi semua operasi komputer.
7.4 Contoh Bus
            Banyak  perusahaan yang  mengembangkan bus  – bus  antarmuka  terutama  untuk perangkat peripheral. Diantara jenis bus yang beredar di pasaran saat ini adalah PCI, ISA, USB, SCSI, FuturaBus+, FireWire, dan lain – lain. Semua memiliki keunggulan, kelemahan, harga dan teknologi yang berbeda sehingga akan mempengaruhi jenis – jenis penggunaannya.  

7.4.1 Bus ISA
              Ketika  IBM  memperkenalkan PC/AT  yang  berbasiskan CPU  80286, perusahaan ini menghadapi masalah besar. Jika IBM telah memulai sejak awal dan merancang sebuah bus 16 bit yang seluruhnya baru, banyak konsumen potensial akan bergegas membeli mesin tersebut karena tidak ada satupun dari begitu banyak papan plug-in PC yang disediakan oleh para vendor pihak ketiga  dapat  bekerja  dengan menggunakan mesin baru tersebut. Di  sisi  lain, dengan tetap berpegang pada bus PC dan 20 jalur alamatnya serta 8 jalur data tidak akan memperoleh manfaat dari keunggulan CPU 80286 untuk mengalamatkan 16 M memori dan mentransfer word 16 bit. 
               Solusi yang dipilih adalah mengembangkan PC. Kartu-kartu plug-in PC memiliki sebuah konektor sisi dengan 62 kontak, tetapi operasi konektor sisi ini tidak menjangkau seluruh papan ini. Solusi  PC/AT  adalah menempatkan sebuah konektor  sisi  kedua  pada  bagian dasar  papan tersebut, dekat dengan konektor sisi utama, dan merancang sirkuit AT untuk beroperasi dengan kedua jenis papan ini. 
              Konektor  kedua  pada bus PC/AT memiliki 36 jalur. Dari ke-36 jalur ini, 31 disediakanuntuk jalur-jalur alamat tambahan, jalur-jalur data tambahan, jalur-jalur interupsi tambahan, sertauntuk daya dan ground. Sisanya digunakan untuk mengatasi perbedaan-perbedaan antara transfer 8 bit dan 16 bit. 
              Industri  komputer  personal  lainnya  merespon perkembangan ini  dengan mengadopsi standarnya  sendiri, bus  ISA  (Industry  Standar  Architecture), yang  pada  dasarnya  adalah bus PC/AT  yang  beroperasi  pada  8,33 MHz. Keuntungannya  adalah bahwa  pendekatan ini  tetap mempertahankan kompatibilitas  dengan mesin-mesin dan kartu-kartu yang  ada. Pendekatan ini juga didasarkan pada sebuah bus yang telah dilisensikan secara bebas oleh IBM kepada banyak perusahaan dalam  rangka  untuk  menjamin bahwa  sebanyak  mungkin pihak  ketiga  dapat memproduksi kartu-kartu untuk PC pertama, sesuatu yang kembali menghantui IBM. Setiap PC yang berbasiskan Intel masih menggunakan bus jenis ini, meskipun biasanya juga disertai dengan satu atau lebih bus lain. 

7.4.2 Bus PCI
              Peripheral Component Interconnect (PCI) adalah bus yang tidak tergantung prosesor dan berfungsi  sebagai  bus  mezzanine  atau bus  peripheral. PCI  memiliki  kinerja  tinggi  untuk  sistem I/O berkecepatan tinggi seperti : video adaptor, NIC, disk controller, sound card, dan lain-lain. Standard PCI adalah 64 saluran data pada kecepatan 33 MHz, laju transfer data 264 MB per detik atau 2,112 Gbps. Keunggulan PCI  tidak  hanya  pada  kecepatannya  saja  tetapi  murah dengan keping yang sedikit. 
              Intel  mulai  menerapkan PCI  pada  tahun 1990 untuk  sistem  pentiumnya. Untuk mempercepat  penggunaan PCI, Intel  mempatenkan PCI  bagi  domain publik  sehingga  vendor dapat mengeluarkan produk dengan PCI tanpa royalti.

7.4.3 Bus USB
              Semua perangkat peripheral tidak efektif apabila dipasang pada bus berkecepatan tinggi PCI, sedangkan banyak peralatan yang memiliki kecepatan rendah seperti keyboard, mouse, dan printer. Sebagai  solusinya  tujuh vendor komputer (Compaq, DEC, IBM, Intel, Microsoft, NEC, dan Northern Telecom) bersama-sama merancang bus untuk peralatan I/O berkecepatan rendah. Standard yang dihasilkan dinamakan Universal Standard Bus (USB). 
Keuntungan yang didapatkan dan tujuan dari penerapan USB adalah sebagai berikut : 

  1.  Pemakai tidak harus memasang tombol atau jumper pada PCB atau peralatan.
  2.  Pemakai tidak harus membuka casing untuk memasang peralatan I/O baru. 
  3.  Hanya satu jenis kabel yang diperlukan sebagai penghubung
  4.  Dapat mensuplai daya pada peralatan-peralatan I/O. 
  5.  Memudahkan pemasangan peralatan-peralatan yang  hanya  sementara  dipasang  pada komputer. 
  6.  Tidak diperlukan reboot pada pemasangan peralatan baru dengan USB.  
  7.   Murah 
             Bandwidth total USB adalah 1,5 MB per detik. Bandwidth itu sudah mencukupi peralatan I/O  berkecepatan rendah seperti  keyboard, mouse, scanner, telepon digital, printer, dan sebagainya. Kabel  pada  bus  terdiri  dari  4 kawat, 2 untuk  data, 1 untuk  power  (+5 volt), dan 1 untuk ground. Sistem pensinyalan mentransmisikan sebuah bilangan nol sebagai transisi tegangan dan sebuah bilangan satu bila tidak ada transmisi tegangan. 

7.4.4 Bus SCSI
           Small  Computer  System  Interface  (SCSI)  adalah perangkat  peripheral  eksternal  yang dipopulerkan oleh macintosh pada  tahun 1984. SCSI  merupakan interface  standard untuk  drive CD-ROM, peralatan audio, hard disk, dan perangkat  penyimpanan eksternal  berukuran besar. SCSI menggunakan interface paralel dengan 8, 16, atau 32 saluran data. 
           Konfigurasi  SCSI  umumnya  berkaitan dengan bus, walaupun pada  kenyataannya perangkat-perangkat  tersebut  dihubungkan secara  daisy-chain. Perangkat  SCSI  memiliki  dua buah konektor, yaitu konektor  input  dan konektor  output. Seluruh perangkat  berfungsi  secara independen dan dapat  saling  bertukar  data  misalnya  hard disk  dapat  mem-back  up diri  ke  tape drive tanpa melibatkan prosesor. 
            Terdapat beberapa macam versi SCSI. SCSI-1 dibuat tahun 1980 memiliki 8 saluran data, dan beroperasi pada kecepatan 5 MHz. Versi ini memungkinkan sampai 7 perangkat dihubungkan secara daisy-chain. SCSI-2 diperkenalkan tahun 1992 dengan spesifikasi 16 atau 32 saluran data pada  kecepatan 10 MHz. SCSI-3 yang  mendukung  kecepatan yang  lebih tinggi  sampai  saat  ini masih dalam tahap penelitian.

7.4.5 Bus P1394 / Fire Wire
            Semakin pesatnya kebutuhan bus I/O berkecepatan tinggi dan semakin cepatnya prosesor saat ini yang mencapai 1 GHz, maka perlu diimbangi dengan bus berkecapatan tinggi juga. Bus SCSI  dan PCI  tidak  dapat  mencukupi  kebutuhan saat  ini. Sehingga  dikembangkan bus performance tinggi yang dikenal dengan Fire Wire (P1394 standard IEEE).   
              P1394 memiliki kelebihan dibandingkan dengan interface I/O lainnya, yaitu sangat cepat, murah, dan mudah untuk diimplementasikan. Pada kenyataanya P1394 tidak hanya populer pada sistem  komputer, namun juga  pada  peralatan elektronik seperti  pada  kamera  digital, VCR, dan televisi. Kelebihan lain adalah penggunaan transmisi  serial  sehingga  tidak  memerlukan  banyak kabel. 




2 komentar: