Selasa, 27 April 2021

Unit Masukan dan Keluaran (I/O Device)

 Unit Masukan dan Keluaran (I/O Device)đź’»

A. Pengertian dan Fungsi Modul I/O
    Komponen utama sistem komputer meliputi CPU, memori (primer dan sekunder),  modul masukan/keluaran (I/O devices), serta sistem interkoneksi. Modul I/O atau modul  masukan/keluaran merupakan peralatan antarmuka (interface) bagi sistem bus atau switch  sentral dan mengontrol satu atau lebih perangkat peripheral. Tidak hanya sekedar modul
penghubung, tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi  antara peripheral dan bus komputer. Piranti atau perangkat eksternal tidak tidak langsung  dihubungkan dengan bus sistem komputer disebabkan karena bervariasinya metode operasi  piranti peripheral, sehingga tidak praktis apabila sistem komputer harus menangani berbagai  macam sisem operasi piranti peripheral tersebut. Kecepatan transfer data piranti peripheral  umumnya lebih lambat dari pada laju transfer data pada CPU maupun memori. Format data  dan panjang data pada piranti peripheral seringkali berbeda dengan CPU, sehingga perlu modul  untuk menselaraskannya.

Model generik dari suatu modul I/O

    Fungsi modul I/O yaitu sebagai piranti antarmuka ke CPU dan memori melalui bus  sistem. Fungsi utama lainnya dari modul ini adalah sebagai piranti antarmuka dengan peralatan  peripheral lainnya dengan menggunakan link data tertentu. Modul I/O adalah suatu komponen  dalam sistem komputer yang bertanggung jawab atas pengontrolan perangkat luar serta  pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register–  register CPU atau disebut juga antarmuka dengan perangkat eksternalnya untuk menjalankan  fungsi–fungsi pengontrolan. Adapun fungsi modul I/O lainnya meliputi kontrol dan  pewaktuan, komunikasi CPU, komunikasi perangkat eksternal, pem-buffer-an data serta  deteksi kesalahan

B. Struktur dan Teknik Modul I/O
    Modul I/O mengalamai berbagai macam perkembangan seiring dengan perkembangan  berbagai jenis komputer. Namnun, bagaimanapun kompleksitas suatu modul I/O struktur dari  sistem ini masih terdapat kemiripan. Antarmuka modul I/O ke CPU melalui bus sistem  komputer terdapat tiga saluran yaitu saluran data, saluran alamat serta saluran kontrol. Bagian  terpenting dari modul ini adalah blok logika I/O yang berhubungan dengan semua peralatan  antarmuka peripheral, terdapat fungsi pengaturan dan switching pada blok.
Blok diagram struktur modul I/O

    Metode akses perangkat eksternal terhadap modul Input Output terbagi menjadi tiga  yaitu programmed, interrupt driven serta Direct Memory Access (DMA). Pada programmed  atau I/O Terprogram data saling dipertukarkan antara CPU dan modul I/O. CPU mengeksekusi  program yang memberikan operasi I/O kepada CPU secara langsung yang melliputi  pemindahan data, pengiriman perintah baca maupun tulis dan monitoring perangkat.  Kelemahan dari programmd I/O adalah bahwa CPU akan menunggu sampai operasi I/O selesai  dilakukan modul I/O sehingga akan membuang waktu, CPU lebih cepat proses operasinya.  Dalam teknik ini, modul I/O tidak dapat melakukan interupsi kepada CPU terhadap proses –  proses yang diinteruksikan padanya. Seluruh proses merupakan tanggung jawab CPU sampai  operasi lengkap dilaksanakan. Pada programmed I/O implementasi perintah dalam instruksi  I/O terbagi menjadi dua yaitu memory-mapped I/O dan isolated I/O.
    Memory-mapped I/O terdapat ruang tunggal untuk lokasi memori dan perangkat I/O.  CPU memperlakukan register status dan register data modul I/O sebagai lokasi memori dan  menggunakan instruksi mesin yang sama untuk mengakses baik memori maupun perangkat  I/O. Konskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran tunggal  untuk penulisan. Keuntungan memory-mapped I/O adalah efisien dalam pemrograman, namun  memakan banyak ruang memori alamat. Pada impelemtasi Isolated I/O dilakukan pemisahan  ruang pengalamatan bagi memori dan ruang pengalamatan bagi I/O. Dengan teknik ini  diperlukan bus yang dilengkapi dengan saluran pembacaan dan penulisan memori ditambah  saluran perintah output. Keuntungan isolated I/O adalah sedikitnya instruksi I/O.
    Pada teknik Interrupt – Driven I/O proses pengaksesan dilakukan lebih optimal dengan  tidak membuang – buang waktu. Prosesnya yang terjadi yaitu CPU mengeluarkan perintah I/O  pada modul I/O, bersamaan perintah I/O dijalankan modul I/O maka CPU akan melakukan  eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi  yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai.  Kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari memori  maupun pelaksanaan isi perintah tersebut. CPU melakukan multitasking beberapa perintah  sekaligus dimana tidak ada waktu tunggu bagi CPU yang membuat proses bisa lebih cepat.  Cara kerja teknik interupsi di sisi modul I/O yaitu modul I/O menerima perintah, misal read.  Modul I/O melaksanakan perintah pembacaan dari peripheral dan meletakkan paket data ke  register data modul I/O. Modul mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol.  Modul menunggu datanya diminta CPU. Saat permintaan terjadi modul meletakkan data pada  bus data dan modul siap menerima perintah selanjutnya.
    Direct memory acces atau akses memori langsung mampu mengatasii kelemahan yang  terdapat pada interrupt driven dan programmed I / O, dimana kedua teknik sebelumnya  memerlukan intervensi CPU aktif dan memiliki transfer rate yang terbatas. Fungsi DMA adalah  sebagai modul tambahan (hardware) pada sistem bus dimana kontroler DMA mengambil alih  tugas dari CPU untuk penanganan I/O. Cara kerja DMA menyesuaikan instruksi dari CPU pada  saat CPU memberitahu DMA controller untuk melakukan tugas seperti membaca atau menulis  data, mengetaui alamat perangkat, memulai alamat blok memori data, serta mencari tahu  jumlah data yang akan ditransfer. Setelah CPU menginstruksikan perintah pada DMA  controller, CPU melakukan pekerjaan lain dan DMA controller menangani pkerjaan yang  berkenaan dengan instruksi yang diberikan CPU. Jika pekerjaan sudah selesai maka DMA  controller akan mengirimkan interupsi atau pesan pada CPU.

Konfigurasi Teknik Direct memory acces

    Konfigurasi DMA terbagi menjadi tiga jenis yang pertama yaitu Single Bus, Detached  DMA controller. Pada konfigurasi ini setiap transfer menggunakan bus dua kali seperti  perjalanan data dari I/O ke DMA lalu DMA ke memori sehingga pada saat sistem bus  digunakan dua kali maka kerja CPU juga ditunda dua kali. Konfigurasi kedua disebut sebagai  Single Bus, Integrated DMA controller. Pada konfigurasi ini controller dapat mendukung lebih  dar satu perangkat sehingga setiap terjadi perpindahan atau transfer data maka sistem  menggunakan bus hanya satu kali seperti perpindahan data dari DMA ke memori. Jika sistem  bus digunakan satu kali maka kinerja CPU juga ditunda satu kali sehingga bisa dikatakan  bahwa konfigurasi jenis ii lebih baik dari yang sebelumnya. Konfigurasi jenis ketiga yaitu  Separate I/O Bus (system I/O bus yang terpisah). Konfigurasi bus yang dibangun mendukung  semua perangkat DMA yang aktif. Dalam kedua kasus ini  sistem bus  digunakan secara bersama oleh modul DMA, prosesor dan memori. Namun pada praktiknya  penggunaan jalur bus ini hanyalah untuk pertukaran data antara DMA dengan memori.



Materi MEMORI-Organisasi Arsitektur Komputer

 MEMORIđź’»

A. Pengertian Memori
    Memori adalah bagian dari komputer tempat program–program dan data–data  disimpan. Memori juga diartikan sebagai tempat informasi, dibaca dan ditulis, dimana terdapat  berbagai jenis, teknologi, organisasi, unjuk kerja dan harga memori. Secara garis besar, berdasarkan lokasinya memori terbagi dua yaitu memori internal dan eksternal. Memori  internal adalah memori yang dapat diakses langsung oleh prosesor. Contoh memori internal  adalah register yang terdapat di dalam prosesor, cache memori dan memori utama berada di  luar prosesor. Sedangkan memori eksternal adalah memori yang diakses prosesor melalui  piranti I/O, contohnya disket dan hardisk. Elemen dasar memori disebut sebagai sel memori. Sifat sel memori yaitu memiliki dua  keadaan stabil (atau semi-stabil), yang dapat digunakan untuk merepresentasikan bilangan  biner 1 atau 0. Sifat lainya adalah bahwa sel memori mempunyai kemampuan untuk ditulisi (sedikitnya satu kali) dan kemampuan untuk dibaca.
Terminal fungsi sel memori
B. Karakter Sistem Memori
    Karakteristik memori terbagi atas beberapa bagian yaitu lokasi, kapasitas, satuan  transfer, metode akses, kinerja, tipe fisik beserta karakter fisik. Adaaun detail klasifikasi karakteristik sismtem meori tersebut dapat dilihat pada tabbel berikut.


    Berdasarkan tabel karakteristik tersebut diatas maka berdasarkan lokasi nya memori  terbagi atas CPU, internal dan eksternal. Memori yang berada di dalam chip prosesor (CPU)  adalah register. Register diakses langsung oleh prosesor dalam menjalankan operasinya.  Register digunakan sebagai memori sementara dalam perhitungan maupun pengolahan data  dalam prosesor. Sementara memori internal secara lokasi berada diluar chip prosesor, dimana  memori ini juga diakses langsung oleh prosesor. Memori internal terbagi atas memori utama  dan cache memori. Memori eksternal merupakan jenis memori yang lokasinya diluar komputer  dan diakses oleh prosesor melalui piranti I/O. Contoh memori eksternal ini dapat berupa disk  maupun pita. Kapasitas Memori memori internal maupun eksternal biasanya dinyatakan dalam mentuk byte (1 byte = 8 bit) atau word. Panjang word umumnya 8, 16, 32 bit. Sementara  memori eksternal biasanya lebih besar kapasitasnya daripada memori internal, hal ini  disebabkan karena teknologi dan sifat penggunaannya yang berbeda. Satuan Transfer memori internal sama dengan jumlah saluran data yang masuk ke dan keluar dari modul memori.  Jumlah saluran ini sering kali sama dengan panjang word, tapi dimungkinkan juga tidak sama.  Konsep Satuan Transfer terbagi menjadi beberapa diantaranya yaitu word, addressable units  serta unit of transfer. Word merupakan satuan “alami” organisasi memori. Ukuran word  biasanya sama dengan jumlah bit yang digunakan untuk representasi bilangan dan panjang  instruksi. Addressable units, pada sejumlah sistem, adressable units adalah word. Namun  terdapat sistem dengan pengalamatan pada tingkatan byte. Pada semua kasus hubungan antara  panjang A suatu alamat dan jumlah N adressable unit adalah 2A =N. Unit of tranfer, adalah  jumlah bit yang dibaca atau dituliskan ke dalam memori pada suatu saat. Pada memori  eksternal,tranfer data biasanya lebih besar dari suatu word, yang disebutdengan block.
    Metode Akses memori terbagi menjadi empat yaitu Sequential access, Direct access ,Random access serta Associative access. Metode sequential access bekerja dengan cara  memori diorganisasi menjadi unit – unit data yang disebut record. Akses harus dibuat dalam  bentuk urutan linier yang spesifik. Informasi pengalamatan yang disimpan dipakai untuk  memisahkan record – record dan untuk membantu proses pencarian. Terdapat shared read/write  mechanism untuk penulisan/pembacaan memorinya. Pita magnetik merupakan memori yang  menggunakan metode sequential access. Sedangkan metode direct access sama seperti  sequential access dimana terdapat shared read/write mechanism. Setiap blok dan record  memiliki alamat unik berdasarkan lokasi fisiknya. Akses dilakukan langsung pada alamat  memori dan disk adalah memori direct access. Metode yang selanjutnya yaitu random access,  pada metode ini setiap lokasi memori dipilih secara random dan diakses serta dialamati secara  langsung. Contohnya adalah memori utama. Metode yang terakhir yaitu associative access  yang merupakan jenis memori random akses yang memungkinkan pembandingan lokasi bit  yang diinginkan untuk pencocokan. Data dicari berdasarkan isinya bukan alamatnya dalam  memori. Contoh memori ini adalah cache memori. Parameter utama unjuk kerja memori meliputi access time, memory cycle time serta transfer rate. Pada random access memory, waktu akses adalah waktu yang dibutuhkan untuk melakukan operasi baca atau tulis. Memori non-random akses merupakan waktu yang  dibutuhkan dalam melakukan mekanisme baca atau tulis pada lokasi tertentu. Selanjutnya  parameter semory cycle time digunakan pada random access memory. Terdiri dari access time  ditambah dengan waktu yang diperlukan transient agar hilang pada saluran sinyal. Pada t  ransfer rate atau kecepatan data transfer ke unit memori atau dari unit memori. Random access  memory sama dengan 1/(cycle time). Sedangkan non-random access memory dengan  perumusan :

TN = TA + (N/R)
TN = waktu rata – rata untuk membaca atau menulis N bit  TA = waktu akses rata – rata
N = jumlah bit
R = kecepatan transfer dalam bit per detik (bps)

    Berdasarkan bentuk fisiknya memori dibedakan menjadi volatile dan non-volatile serta  erasable dan nonerasable. Pada media penyimpanan volatile (volatile memory) informasi akan  hilang apabila daya listriknya dimatikan, sedangkan pada non-volatile memory data yang  tersimpan tidak hilang walau daya listriknya hilang. Memori permukaan magnetik adalah  contoh non-volatile memory, sedangkan memori semikonduktor ada yang volatile dan  nonvolatile. Selanjutnya pada pembagian media erasable dan nonerasable, terdapat beberapa  jenis memori semikonduktor yang tidak bisa dihapus kecuali dengan menghancurkan unit  storage-nya, memori ini dikenal dengan ROM (Read Only Memory).
Keandalan memori dihitung berdasarkan ukuran kapasitas atau berapa banyak data
yang data disimpan. Kebutuhan ukuran ini merupakan sesuatu yang sulit dijawab, karena  berapapun kapasitas memori tentu ukuran aplikasi yang akan menggunakannya juga menjadi  factor penentu. Keandalan selajutnya dihitung berdasarkan kecepatan akses memori dimana  memori harus mempu mengikuti kecepatan CPU sehingga terjadi sinkronisasi kerja antar CPU  dan memori tanpa adanya waktu tunggu karena komponen lain belum selesai prosesnya. Faktor  penentu keandalan yang lain meliputi harga dari sebuah memori yang bisa dikatakan bahwa  nilainya relatif. Bagi produsen selalu mencari harga produksi paling murah tanpa  mengorbankan kualitasnya untuk memiliki daya saing di pasaran. Hubungan ketiganya yakni  harga, kapasitas dan waktu akses adalah bahwa semakin kecil waktu akses maka semakin besar  harga per bitnya, semakin besar kapasitas maka semakin kecil harga per bitnya serta semakin  besar kapasitas maka semakin besar waktu aksesnya.

C. Hirarki Memori
    Menurunnya hirarki mengakibatkan beberapa hal terjadi diantaranya meliputi  penurunan harga/bit, peningkatan kapasitas, peningkatan waktu akses serta penurunan  frekuensi akses memori oleh CPU. Kunci keberhasilan hirarki ini pada penurunan frekuensi
aksesnya. Semakin lambat memori maka keperluan CPU untuk mengaksesnya semakin sedikit.  Secara keseluruhan sistem komputer akan tetap cepat namun kebutuhan kapasitas memori  besar terpenuhi.


Hirarki Memori
Dari gambar hirarki di atas maka memori dapat diklasifikasikan berdasarkan tipe, teknologi,  ukuran atau kapasitas serta waktu akses seperti pada table berikut.


Satuan pokok memori adalah digit biner atau disebut bit. Bit dapat berisi sebuah angka 0 atau 1. Memori juga dinyatakan dalam byte, 1 byte = 8 bit. Kumpulan byte dinyatakan dalam word. Panjang word yang umum adalah 8, 16, dan 32 bit. Tingkatan satuan memori dari yang ukuran  kecil sampai besar tampak pada table di bawah ini

D. Memori internal
    Memori semikonduktor terbagi atas beberapa tipediantaraya adalah random akses  (RAM), ROM, PROM, EPROM, Flas Memory serta EEPROM. Klasifikasi detail untuk setiap jenis memori tersebut tampak pada table 8.3 di bawah. Pada komputer lama, bentuk umum  random access memory untuk memori utama adalah sebuah piringan ferromagnetik berlubang  yang dikenal sebagai core, istilah yang tetap dipertahankan hingga saat ini.

Tipe-tipe memori semikonduktor
    Pada memori random akses data diakses secara langsung melalui logik pengalamatan  wired-in. Pada memori jenis ini dimungkinkan adanya pembacaan dan penulisan data ke  memori secara cepat dan mudah. RAM bersifat volatile dimana data tersimpan selama ada daya  (listrik) dan akan hilang jika tidak ada sumber listrik. Random akses memori terbagi atas RAM  dinamik dan RAM static. RAM dinamik disusun oleh sel – sel yang menyimpan data sebagai  muatan listrik pada kapasitor. Kapasitor memiliki kecenderungan alami untuk mengosongkan  muatan, maka RAM dinamik memerlukan pengisian muatan listrik secara periodik untuk  memelihara penyimpanan data. Biasanya dimanfaaatkan untuk operasi data besar. Sedangkan  RAM statik, nilai biner disimpan dengan menggunakan konfigurasi gate logika flipflop tradisional. RAM jenis ini memiliki kemampuan menyimpan data selama ada daya listriknya  dan lebih cepat dibanding RAM dinamik. ROM (Read Only Memory) merupakan jenis memori yang sangat berbeda dengan RAM. Pada ROM data bersifat permanen, tidak bisa diubah dimana ini menguntungkan untuk  penyimpanan data yang permanen. Namun terdapat kerugian yaitu jika terdapat kesalahan data  atau adanya perubahan data sehingga perlu penyisipan –penyisipan. PROM (Programmable  ROM) merupakan jenis memori non-volatile yang terbagi atas tiga macam yaitu EPROM,  EEPROM dan flash memory. EEPROM electrically erasable programmable read only memory.  Jenis memori yang dapat ditulisi kapan saja tanpa menghapus isi sebelumnya. EEPROM  menggabungkan kelebihan non-volatile dengan fleksibilitas dapat di-update

Typical Memory Package Pins and Signals
    Pengemasan memori sebagaimana tampak pada Gambar 7.3 di atas (a) EPROM yang  merupakan keping 8 Mbit yang diorganisasi sebagai 1Mx8. Organisasi dianggap sebagai  kemasan satu word per keping. Kemasan terdiri dari 32 pin, yang merupakan salah satu ukuran  kemasan keping standar. Sedangkan gambar (b) keping 16 Mbit yang diorganisasikan sebagai  4M x 4. Terdapat sejumlah perbedaan dengan keping ROM, karena ada operasi tulis maka pin– pin data merupakan input/output yang dikendalikan oleh WE (write enable) dan OE (output  enable). Pada pengemasan DRAM ini data yang akan dibaca terdiri dari 8 saluran (D0 –D7). Catu daya keping adalah Vcc dengan pin grounding Vss serta pin chip enable (CE). Karena  mungkin terdapat lebih dari satu keping memori yang terhubung pada bus yang sama maka pin  CE digunakan untuk mengindikasikan valid atau tidaknya pin ini. Pin CE diaktifkan oleh logik  yang terhubung dengan bit berorde tinggi bus alamat (di atas A19). Tegangan program adalah  Vpp.

    Dalam melaksanakan fungsi penyimpanan, memori semikonduktor dimungkinkan  mengalami kesalahan. Kesalahan berat yang biasanya merupakan kerusakan fisik memori.  Kesalahan ringan yang berhubungan data yang disimpan. Kesalahan ringan dapat dikoreksi  kembali. Koreksi kesalahan data yang disimpan diperlukan dua mekanisme yaitu mekanisme  pendeteksian kesalahan serta perbaikan kesalahan.

E. Cache Memori
    Salah satu jenis memori adalah cache memori yang memiliki kemampuan untuk  mempercepat kerja memori utama sehingga mendekati kecepatan prosesor. Memori utama  lebih besar kapasitasnya namun lambat operasinya, sedangkan cache memori berukuran kecil  namun lebih cepat. Cache memori berisi salinan memori utama. Ukuran cache memori adalah  kecil, semakin besar kapasitasnya maka akan memperlambat proses operasi cache memori itu  sendiri, disamping harga cache memori yang sangat mahal.

Ilustrasi Cache memori

Organisasi Cache Memori

Elemen Cache Memori

    Secara bentuk fisik cache memori terbagi atas logical dan fisikal, sedangkan untuk  ukuran bervarasi menyesuaikan kebutuhan. Sebagai contoh AMD mengeluarkan prosesor K5  dan K6 dengan cache yang besar (1MB), kinerjanya tidak bagus. Intel mengeluarkan prosesor
tanpa cache untuk alasan harga yang murah, yaitu seri Intel Celeron pada tahun 1998-an,  kinerjanya sangat buruk terutama untuk operasi data besar, floating point. Sejumlah penelitian  telah menganjurkan bahwa ukuran cache antara 1KB dan 512KB akan lebih optimum [STA96]. Hubungan antara ukuran blok dan hit ratio sangat rumit untuk dirumuskan, tergantung pada karakteristik lokalitas programnya dan tidak terdapat nilai optimum yang pasti telah  ditemukan. Ukuran antara 4 hingga 8 satuan yang dapat dialamati (word atau byte) cukup  beralasan untuk mendekati nilai optimum [STA96].
    Pemetaan Cache mempunyai kapasitas yang kecil dibandingkan memori utama. Aturan
blok – blok mana yang diletakkan dalam cache. Terdapat tiga metode, yaitu pemetaan  langsung, pemetaan asosiatif, dan pemetaan asosiatif set. Pemetaan langsung merupakan teknik  paling sederhana, yaitu teknik ini memetakan blok memori utama hanya ke sebuah saluran  cache saja. Pemetaan Assosiatif mengatasi kekurangan pemetaan langsung. Tiap blok memori  utama dapat dimuat ke sembarang saluran cache. Alamat memori utama diinterpretasikan  dalam field tag dan field word oleh kontrol logika cache. Tag secara unik mengidentifikasi  sebuah blok memori utama. Mekanisme untuk mengetahui suatu blok dalam cache dengan  memeriksa setiap tag saluran cache oleh kontrol logika cache. Fleksibilitas dalam penggantian  blok baru yang ditempatkan dalam cache. Kelebihan dari pemetaan ini adalah bahwa algoritma  penggantian dirancang untuk memaksimalkan hit ratio, yang pada pemetaan langsung terdapat  kelemahan. Sedangkan kekurangannya yaitu kompleksitas rangkaian sehingga mahal secara  ekonomi. Pemetaan Assosiatif Set menggabungkan kelebihan yang ada pada pemetaan langsung dan pemetaan asosiatif. Memori cache dibagi dalam bentuk set–set. Alamat memori  utama diinterpretasikan dalam tiga field, yaitu: field tag, field set, field word. Setiap blok  memori utama dapat dimuat dalam sembarang saluran cache.
Pemetaan Langsung

    Algorithma penggantian merupakan suatu mekanisme pergantian blok–blok dalam  memori cache yang lama dengan data baru. Pemetaan langsung tidak memerlukan algoritma  ini. Pemetaan asosiatif dan asosiatif set, berperanan penting meningkatkan kinerja cache  memori. Algoritma Least Recently Used (LRU), yaitu mengganti blok data yang terlama berada  dalam cache dan tidak memiliki referensi. Algoritma First In First Out (FIFO), yaitu mengganti  blok data yang awal masuk. Algorithma Least Frequently Used (LFU) adalah mengganti blok  data yang mempunyai referensi paling sedikit. Algoritma Random, yaitu penggantian tidak  berdasakan pemakaian datanya, melainkan berdasar slot dari beberapa slot kandidat secara  acak.
    Apabila suatu data telah diletakkan pada cache maka sebelum ada penggantian data
baru maka harus dicek apakah data tersebut telah mengalami perubahan atau tidak. Apabila  data telah berubah maka data pada memori utama harus di-update. Masalah penulisan ini sangat  kompleks, apalagi memori utama dapat diakses langsung oleh modul I/O, yang memungkinkan  data pada memori utama berubah. Perubahan data pada memori utama ini tentunya akan  mempengaruhi data yang telah dikirim pada cache. Perubahan ini menyebabkan data yang ada  pada cache menjadi tidak valid, sehingga perlu dilakukan pembenaran berupa update atau perubahan data. Write Policy –”write through” merupakan operasi penulisan melibatkan data  pada memori utama dan sekaligus pada cache memori sehingga data selalu valid. Kekurangan  teknik ini adalah lalu lintas data ke memori utama dan cache sangat tinggi. Write Policy –”write  back “ merupakan teknik meminimasi penulisan dengan cara penulisan pada cache saja. Pada  saat akan terjadi penggantian blok data cache maka baru diadakan penulisan pada memori  utama. Masalah muncul jika data di memori utama belum di-update telah diakses modul I/O  sehingga data di memori utama tidak valid. Write Policy-Multi cache merupakan multi cache  untuk multi prosesor yang memiliki masalah yang lebih kompleks. Masalah validasi data tidak  hanya antara cache dan memori utama namun validasi antar cache juga harus diperhatikan. Berdasarkan jumlahnya cache memori terbagi menjadi dua yaitu single or two level serta unified or split. Pada jenis single or two level cache, layer 1 atau L1 merupakan cache internal dimana lokasi memori berada di dalam chip yang tidak membutuhkan bus eksternal  dan waktu aksesnya sangat cepat. Sementara layer 2 atau cache tingkat 2 (L2) merupakan cache  eksternal yang lokasinya ada diluar chip. Selanjutnya jenis yang kedua dari sistem cache  terdapat cache data dan cache instruksi yang disebut unified cache. Keuntungan unified cache  yaitu hit rate yang tinggi karena telah dibedakan antara informasi data dan informasi instruksi  dan hanya sebuah cache saja yang perlu dirancang dan diimplementasikan. Pemanfaatan split  cache dapat dilihat pada mesin–mesin superscalar seperti Pentium dan PowerPC dimana sistem  lebih menekankan pada paralel proses dan perkiraan –perkiraan eksekusi yang akan terjadi.  Kelebihan utama split cache adalah kemampuanya dalam mengurangi persaingan antara  prosesor instruksi dan unit eksekusi untuk mendapatkan cache, hal ini sangat utama bagi  perancangan prosesor–prosesor pipelining sesuai kontrolnya. Dua metode layout data pada disk, yaitu constant angular velocity dan  multiple zoned recording. Disk diorganisasi dalam bentuk cincin – cincin konsentris yang  disebut track. Tiap track pada disk dipisahkan oleh gap (gap: mencegah atau mengurangi  kesalahan pembacaan maupun penulisan yang disebabkan melesetnya head atau karena  interferensi medan magnet). Sejumlah bit yang sama akan menempati track – track yang  tersedia. Semakin ke dalam disk maka kerapatan (density) disk akan bertambah besar. Data  dikirim ke memori ini dalam bentuk blok, umumnya blok lebih kecil kapasitasnya daripada  track. Blok – blok data disimpan dalam disk yang berukuran blok, yang disebut sector. Track  biasanya terisi beberapa sector, umumnya 10 hingga 100 sector tiap tracknya.
    RAID (Redundancy Array of Independent Disk) merupakan organisasi disk memori  yang mampu menangani beberapa disk dengan sistem akses parallel dan redudansi
ditambahkan untuk meningkatkan reliabilitas. Kerja paralel menghasilkan resultan kecepatan  disk yang lebih cepat. Teknologi database sangat penting dalam model disk ini karena  pengontrol disk harus mendistribusikan data pada sejumlah disk dan juga membacaan kembali.  Karakteristik umum disk RAID yaitu bahwa RAID adalah sekumpulan disk drive yang  dianggap sebagai sistem tunggal disk. Data RAID didistribusikan ke drive fisik array dimana  kapasitas redudant disk digunakan untuk menyimpan informasi paritas, yang menjamin  recoveribility data ketika terjadi masalah atau kegagalan disk. RAID merupakan salah satu  jawaban masalah kesenjangan kecepatan disk memori dengan CPU dengan cara menggantikan  disk berkapasitas besar dengan sejumlah disk–disk berkapasitas kecil dan mendistribusikan  data pada disk–disk tersebut sedemikian rupa sehingga nantinya dapat dibaca kembali.
    Sistem pita magnetik menggunakan teknik pembacaan dan penulisan yang identik  dengan sistem disk magnetic. Medium pita magnetik berbentuk track – track paralel, sistem
pita lama berjumlah 9 buah track sehingga memungkinkan penyimpanan satu byte sekali  simpan dengan satu bit paritas pada track sisanya. Sistem pita baru menggunakan 18 atau 36  track sebagai penyesuaian terhadap lebar word dalam format digital. Seperti pada disk, pita  magnetik dibaca dan ditulisi dalam bentuk blok – blok yang bersambungan (kontinyu) yang  disebut physical record. Blok – blok tersebut dipisahkan oleh gap yang disebut inter-record  gap. Kecepatan putaran pita magnetik adalah rendah sehingga transfer data menjadi lambat.  Pita magnetik mulai ditinggalkan digantikan oleh jenis – jenis produk CD.





~SEMOGA BERMANFAATđź’“~




SET INSTRUKSI-Organisasi Arsitektur Komputer (OAK)

 SET INSTRUKSIđź’»

A. Karakteristik Instruksi Mesin
    Instruction set atau set instruksi merupakan kumpulan berbagai jenis instruksi dari CPU  tertentu. Sedangkan elemen instruksi mesin merupakan setiap instruksi harus berisi informasi  yang dibutuhkan oleh CPU untuk eksekusi. 
Elemen instruksi biasanya terdiri atas :
1. Kode operasi berfungsi sebagai penentu operasi
2. Sumber operan sebagai referensi data
3. Hasil operand sebagai referensi data
4. Instruksi selanjutnya yang akan dieksekusi (bisa diberikan dalam instruksi saat ini atau  secara implisit diberikan - instruksi selanjutnya setelah instruksi saat ini).
    Operan sumber dan operan hasil dapat berada di tiga bagian yaitu memori utama atau  memori virtual yang merupakan alamat yang harus diberikan ketika sebuah instruksi dibuat.  Selanjutnya yang kedua adalah register CPU baik register eksplisit maupun implisit. Termasuk  jenis register eksplisit adalah pada penggunaan dua atau tiga register, sedangkan instruksi  dengan satu register (satu instruksi operan), kemungkinan besar yang dilibatkan adalah register  implisit (biasanya untuk operasi aritmatika) akumulator secara implisit dihubungkan sebagai  operan hasil. Jenis operan sumber dan hasil yang kettika adalah perangkat I/O yang digunakan  untuk instruksi I/O. Instruksi harus menentukan perangkat I/O atau modul yang digunakan,  atau pada kasus memory-mapped I/O maka operan tujuan adalah lokasi memori lain.
Sementara itu, seperti yang dipelajari pada mesin IAS, instruksi biasanya diwakili  dengan pernytaan-pernyataan yang sifatnya mudah dipahami atau mudah diingat oleh manusia  (mnemonik). Beberapa contoh instruksi adalah sebagai berikut :

ADD

artinya “tambahkan”

SUB

artinya “kurangkan”

DIV

artinya “bagi”

MUL

artinya “kalikan”


ADD


R, Y,

artinya tambahkan data 

R (operan pertama) 

dan Y (operan kedua)


Processor Organization


B. Tipe Instruksi dan Jumlah Alamat
    Tipe-tipe instruksi pada mesin komputer terbagi atas empat jenis yang meliputi  instruksi untuk pengolahan data aritmatika dan instruksi logika, penyimpanan data yang  merupakan instruksi memori, pergerakan Data dari dan menuju I/O atau biasa disebut sebagai
instruksi I/O, Kontrol atau pengendalian yang merupakan instruksi engujian dan instruksi  cabang serta aritmatika yang mampu memberikan kemampuan komputasi. Jumlah alamat pada  instruksi menunjukkan jumlah operan yang dapat dilibatkan dalam operasi tertentu: bisa jadi  satu, dua atau tiga, atau bahkan nol (stack machine).
Contoh Instruction Set pada mesin DLX (Hennessy & Patterson) adalah ADD R1, R2,  R3 (instruksi RR) atau ADD R1, R2, A (instrruksi RX). Kemudian, contoh lain untuk instruksi  yang melibatkan tiga alamat operan adalah sebagai berikut. Buatlah set instruksi atau program  untuk mengeksekusi persamaan Y = (A-B) / (C + D * E) dengan menggunakan tiga alamat  instruksi:

Instruksi                     Komentar

SUB

Y,A,B

Y ¬ A - B

MPY

T,D,E

T ¬ D x E

ADD

T,T,C

T ¬ T + C

DIV

Y,Y,T

Y ¬ Y / T


    Program aritmatika diatas hanya terdiri atas empat set instruksi, dalam program ini terlihat  bahwa word length untuk alamat operan lebih panjang ketika menggunka tiga alamat yang  terlibat sekaligus dalam setiap instruksi mesin. Sedangkan instruksi yang melibatkan dua buah  alamat untuk permasalahan yang sama yaitu Y= (A-B) / (C + D * E) dapat dilihat pada contoh  di bawah ini.

Instruksi                         Komentar

MOVE

Y,A

Y ¬ A

SUB

Y,B

Y ¬ Y - B

MOVE

T,D

T ¬ D

MPY

T,E

T ¬ T * E

ADD

T,C

T ¬ T + C

DIV

Y,T

Y ¬ Y / T

    Dalam program dengan dua alamat tersebut diatas tampak bahwa program terdiri atas enam  instruksi, dimana pada saat jumlah alamat yang terlibat berkurang (dua alamat, dibandingkan  contoh sebelumnya tiga alamat) maka instruksi semakin panjang. Penyelesaian persamaan Y = (A-B)/(C+D*E) dengan menggunakan satu alamat instruksi dapat  dilihat pada contoh program di bawah ini

Instruksi                       Komentar

LOAD

D

AC ¬ D

MPY

E

AC ¬ AC * E

ADD

C

AC ¬ AC + C

STOR

Y

Y ¬ AC

LOAD

A

AC ¬ A

SUB

B

AC ¬ AC - B

DIV

Y

AC ¬ AC / Y

STOR

Y

Y ¬ AC

    Semakin sedikit alamat instruksi maka program semakin panjang, tampak pada contoh di atas  dibutukan delapan baris set instruksi untuk menyeesaikan satu persoalan yang sama dengan dua contoh sebelumnya. Selanjutnya, persamaan Y = (A-B)/(C+D*E) dapat diselesaikan  dengan menggunakan instruksi zero address seperti berikut.

Instruksi Komentar
PUSH
PUSH A
B
SUB (stack yang bawah dkurangi dengan data pada stack atas)
PUSH D
PUSH E
MUL
PUSH C
ADD
DIV (stack yang bawah dibagi dengan data pada stack atas)
POP Y (data disimpan atau dikeluarkan pada operan Y)


    Jumlah set isntruksi dengan zero address paling banyak dibandingkan dengan satu, dua atau  tiga alamat. Hal ang perlu diperhatikan ketika membat program dengan zero address  instruction adalah bahwa data yang pertama di input mauk ke stack terlebih dahulu diikuti  dengan instruksi-instruksi selanjutnya, sehingga ketika peletakan instruksi tidak pas akan  mengakibatkan program tidak berjalan sebagaimana kebutuhan.

C. Desain set instruksi
    Fakta tentang sesain set instruksi ternyata masih dalam perselisihan. Masalah desain  yang mendasari perselisihan tesebut meliputi operation repertoire yang menyangkut  pembahasan tentang sejauh mana tingkat kerumitan sebuah instruksi, tipe data  yang
menyangkut pertanyaan apakah orang membutuhkan semua jenis data, format instruksi yang  berkaitan dengan format jenis tetap atau variabel kemudian ukuran panjang instruksi serta  jumlah operan yang teribat. Dua pembahasan yang menjadi perselisihan selanjutnya berkaitan  dengan register dan pengalamatan. Pada register ukuran seerta tujuan pemanfaatanya masih  diperdebatkan termasuk pada pengalamatan tentang berapa banyak pengalamatan yang  dibutuhkan beserta mode pengalamatannya. Sementara itu hal lain yang perlu diperhatikan  dalam desain instruksi adalah tipe-tipe operan yang terlibat pada sebuah set instruksi. Instruksi  mesin bekerja pada data dengan kategori data yang paling penting adalah alamat, angka,  karakter serta data logika. Angka yang ada pada set instruksi mesin bisa dalam bentuk integer,  fixed point atau floating point maupun desimal. Sedangkan karakter yang biasa digunakan  dalam pengolahan data bisa dalam bentuk karakter ASCII atau EBCDIC tergantung mesinnya

D. Format dan Mode Pengalamatan
    Instruksi dirancang untuk dapat merujuk ke berbagai lokasi di memori utama. Berbagai  teknik pengalamatan telah digunakan untuk mencapai akses tersebut. Pertukaran antara rentang alamat dan / atau kompleksitas perhitungan alamat sangat perlu diperhatikan. Jenis-jenis teknik  pengalamatan instruksi meliputi pengalamatan segera, langsung, tidak langsung, daftar, daftar  tidak langsung, perpindahan, tumpukan (stack). Sementara permasalahan yang ada terdiri atas  flexibilty lokasi operan, trade off antara fleksibilitas lokasi dan kecepatan pemrosesan.  Diagram untuk berbagai mode pengalamatan tampak pada gambar berikut.


Metode akses memori secara immediate dan direct



Metode akses memori secara indirect dan register direct

Metode akses register secara indirect dan displacement

Contoh penulisan dari mode pengalamatan atau addressing mode adalah sebagai berikut :

·Immediate :

ADD  #100

; add 100 to Accum.

·Direct:

ADD  A

; add content of addr. A to accumulator

·Indirect :

ADD @A

; content of location A is address of 

operand. add content

·Register Direct:

ADD  R1

of loc.   with that address to  accum.

; add content of R1 to accumulator

·Reg. Indirect :

ADD  (R1)

; add content of mem. Location whose addr.

is in R1 to acc.


    Pengaksesan alamat dengan displacement merupakan metode yang "langka", namun masih  mungkin terjadi sebagaimana contoh ini. ADD 1050 (R1) dimana alamat dasar (asal) adalah  berada di R1 dan displacement-nya adalah 1050. Dimana dalam instruksi dua alamat (two  address instruction), akan terlihat seperti ADD 1050 (R1), R2 yang artinya tambahkan data di  R2 dengan data yang alamat dasarnya ada di R1 dan displacement-nya 1050. Tiga displacement  addressing yang umum meliputi pengalamatan relative (relative addressing), pengalamatan  register dasar (base register addressing) serta pengindeksan (indexing). Pada pengalamatan  relative, alamat operan merupakan jumlah alamat dalam instruksi ditambah isi dari program  counter (PC). Pada pengalamatan register dasar, isi base-register ditambahkan ke alamat operan  dalam instruksi. Sedangkan pada skema pengindeksan, bidang alamat instruksi ditambahkan  ke isi register indeks untuk mendapatkan alamat memori yang tepat (dari operan). Tiga skema  alamat tersebut membuat register untuk menunjuk ke beberapa segmen memori tertentu dan  menggunakan alamat operan dalam instruksi sebagai displacement.



~SEMOGA BERMANFAATđź’“~