Pages

Labels

Selasa, 07 Juni 2016

MAKALAH ORGANISASI DAN ARSITEKTUR KOMPUTER (CISC & RISC)



TUGAS ORKOM
MAKALAH TENTANG CISC DAN RISC







Disusun oleh:
Nama Kelompok:
1.      Mustaal Azis                      (1510530043)
2.      Qoriatul Afrianti              (1510520003)
3.      David Kristian Lado        (1510530027)
4.      Saefudin Zohri                  (1510530028)





SEKOLAH TINGGI MANAJEMEN INFORMATIKA KOMPUTER BUMIGORA MATARAM
Jl. Ismail Marzuki Mataram Telp. (0370) 634498 Fax (0370) 638369
Website :www.stmikbumigora.ac.id


DAFTAR ISI

1.      Cover
2.      Daftar Isi--------------------------------------------------------------------------------------------- i
3.      BAB 1 : Pendahuluan
A.    Latar Belakang-------------------------------------------------------------------------------- 1
B.     Tujuan------------------------------------------------------------------------------------------- 1
4.      BAB II: Pembahasan
A.    Definisi RISC dan CISC-------------------------------------------------------------------- 2
B.     Perbedaan RISC dan CISC----------------------------------------------------------------- 5
C.     Karakteristik RISC dan CISC-------------------------------------------------------------- 6
D.    Ciri_ciri RISC dan RISC-------------------------------------------------------------------- 6
E.     Kelebihan dan kekurangan RISC dan RISC-------------------------------------------- 7
F.      Contoh aplikasi RISC------------------------------------------------------------------------ 9
5.      Penutup
Kesimpulan------------------------------------------------------------------------------------------ 10
6.      Daftar Pustaka---------------------------------------------------------------------------- --------- 11



BAB I
PENDAHULUAN

1.1  LATAR BELAKANG
Pada saat ini prosesor saat ini yang dikenal ada 2 yaitu. RISC dan CISC. Prosesor CISC merupakan  prosesor yang memiliki intruksi yang kompleks untuk memudahkan penulisan program bahasa assembly, sedangkan RISC memliki instruksi yang sederhana yang dapat di eksekusi dengan cepat . prosesor RISC di buat dalam luasan keping semikonduktor yang relatif lebih sempit dengan jumlah komponen yang lebih sedikit dibandingkan dengan CISC. keduanya mempunyai perbedaan dalam perancangan kompilatornya. RISC dan CISC keduanya memiliki kelebihan dan kekurangan dalam pengunaannya.

1.2  TUJUAN
Tujuan di buatnya makalah ini adalah :
a.       Untuk mengetahui kelebihan dan kekurangan pada RISC dan CISC
b.      Untuk memahami tentang RISC dan CISC





BAB II
PEMBAHASAN

2.1 Definisi CISC dan RISC
2.1.1 CISC
CISC adalah singkatan dari Complex Intruction Set Computer dimana prosesor tersebut memiliki set instruksi yang kompleks dan lengkap. CISC sendiri adalah salah satu bentuk arsitektur yang menjalani beberapa instruksi dengan tingkat yang rendah. Misalnya intruksi tingakt rendah tersebut adalah operasi aritmetika, penyimpanan-pengambilan dari memory dll. CISC memang memiliki instruksi yang complex dan memang dirasa berpengaruh pada kinerjanya yang lebih lambat. CISC menawarkan set intruksi yang powerful, kuat, tangguh, maka tak heran jika CISC memang hanya mengenal bahasa asembly yang sebenarnya ia tujukan bagi para programmer. Oleh karena itu ,CISC hanya memerlukan sedikit instruksi untuk berjalan. Sistem mikrokontroler selalu terdiri dari perangkat keras (hardware) dan perangkat lunak (software). Perangkat lunak ini merupakan deretan perintah atau instruksi yang dijalankan oleh prosesor secara sekuensial. Instruksi itu sendiri sebenarnya adalah bit-bit logik 1 atau 0 (biner) yang ada di memori program. Angka-angka biner ini jika lebarnya 8 bit disebut byte dan jika 16 bit disebut word. Deretan logik biner inilah yang dibaca oleh prosesor sebagai perintah atau instruksi. Supaya lebih singkat, angka biner itu biasanya direpresentasikan dengan bilangan hexa (HEX). Tetapi bagi manusia, menulis program dengan angka biner atau hexa sungguh merepotkan. Sehingga dibuatlah bahasa assembler yang direpresentasikan dengan penyingkatan kata-kata yang cukup dimengerti oleh manusia.

Bahasa assembler ini biasanya diambil dari bahasa Inggris dan presentasinya itu disebut dengan Mnemonic. Masing-masing pabrik mikroprosesor melengkapi chip buatannya dengan set instruksi yang akan dipakai untuk membuat program.




Biner               Hexa                Mnemonic
10110110        B6                   LDAA ...
10010111        97                    STAA ...
01001010        4A                   DECA ...
10001010        8A                   ORAA ...
00100110        26                    BNE ...
00000001        01                    NOP...
01111110        7E                    JMP ...


Jadi sebenarnya Tujuan utama dari arsitektur CISC adalah melaksanakan suatu perintah cukup dengan beberapa baris bahasa mesin sedikit mungkin. Hal ini bisa tercapai dengan cara membuat perangkat keras prosesor mampu memahami dan menjalankan beberapa rangkaian operasi. Untuk tujuan contoh kita kali ini, sebuah prosesor CISC sudah dilengkapi dengan sebuah instruksi khusus, yang kita beri nama MULT. Saat dijalankan, instruksi akan membaca dua nilai dan menyimpannya ke 2 register yag berbeda, melakukan perkalian operan di unit eksekusi dan kemudian mengambalikan lagi hasilnya ke register yang benar. Jadi instruksi-nya cukup satu saja

2.1.2 RISC

RISC adalah singkatan dari Reduced Instruction Set Computeryang artinya prosesor tersebut memiliki set instruksi program yang lebih sedikit. Karena perbedaan keduanya ada pada kata set instruksi yang kompleks atau sederhana (reduced). RISC lahir pada pertengahan 1980, kelahirannya ini dilator belakangi untuK CISC. Perbedaan mencolok dari kelahiran RISC ini adalah tidak ditemui pada dirinya instruksi assembly atau yang dikenal dengan bahasa mesin sedangkan itu banyak sekali di jumpai di CISC.

Konsep arsitektur RISC banyak menerapkan proses eksekusi pipeline. Meskipun jumlah perintah tunggal yang diperlukan untuk melakukan pekerjaan yang diberikan mungkin lebih besar, eksekusi secara pipeline memerlukan waktu yang lebih singkat daripada waktu untuk melakukan pekerjaan yang sama dengan menggunakan perintah yang lebih rumit. Mesin RISC memerlukan memori yang lebih besar untuk mengakomodasi program yang lebih besar. IBM 801 adalah prosesor komersial pertama yang menggunakan pendekatan RISC.Lebih lanjut untuk memahami RISC, diawali dengan tinjauan singkat tentang karakteristik eksekusi instruksi.

Aspek komputasi yang ditinjau dalam merancang mesin RISC adalah sbb.:

·         Operasi-operasi yang dilakukan:
Operasi
Beberapa penelitian telah menganalisis tingkah laku program HLL (High Level Language). Assignment Statement sangat menonjol yang menyatakan bahwa perpindahan sederhana merupakan satu hal yang penting. Hasil penelitian ini merupakan hal yang penting bagi perancang set instruksi mesin yang mengindikasikan jenis instruksi mana yang sering terjadi karena harus didukung optimal.
·          Operand-operand yang digunakan:
Operand
Penelitian Paterson telah memperhatikan [PATT82a] frekuensi dinamik terjadinya kelas-kelas variabel. Hasil yang konsisten diantara program pascal dan C menunjukkan mayoritas referensi menunjuk ke variable scalar. Penelitian ini telah menguji tingkah laku dinamik program HLL yang tidak tergantung pada arsitektur tertentu. Penelitian [LUND77] menguji instruksi DEC-10 dan secara dinamik menemukan setiap instruksi rata-rata mereferensi 0,5 operand dalam memori dan rata-rata mereferensi 1,4 register. Tentu saja angka ini tergantung pada arsitektur dan kompiler namun sudah cukup menjelaskan frekuensi pengaksesan operand sehingga menyatakan pentingnya sebuah arsitektur.
·         Pengurutan eksekusi:
Procedure Calls
Dalam HLL procedure call dan return merupakan aspek penting karena merupakan operasi yang membutuhkan banyak waktu dalam program yang dikompalasi sehingga banyak berguna untuk memperhatikan cara implementasi opperasi ini secara efisien. Adapun aspeknya yang penting adalah jumlah parameter dan variabel yang berkaitan dengan prosedur dan kedalaman pensarangan (nesting).




2.2 Perbedaan CISC dan RISC
            CISC dan RISC perbedaannya tidak signifikan jika hanya dilihat dari terminologi set instruksinya yang kompleks atau tidak (reduced). Lebih dari itu, RISC dan CISC berbeda dalam filosofi arsitekturnya. Filosofi arsitektur CISC adalah memindahkan kerumitan software ke dalam hardware. Teknologi pembuatan IC saat ini memungkinkan untuk menamam ribuan bahkan jutaan transistor di dalam satu dice. Bermacam-macam instruksi yang mendekati bahasa pemrogram tingkat tinggi dapat dibuat dengan tujuan untuk memudahkan programmer membuat programnya. Beberapa prosesor CISC umumnya memiliki microcode berupa firmware internal di dalam chip-nya yang berguna untuk menterjemahkan instruksi makro. Mekanisme ini bisa memperlambat eksekusi instruksi,
namun efektif untuk membuat instruksi-instruksi yang kompleks. Untuk aplikasi-aplikasi tertentu yang membutuhkan singlechip komputer, prosesor CISC bisa menjadi pilihan.
RISC
CISC
Penekanan pada perangkat lunak
Penekanan pada perangkat keras
Single-clock,hanya sejumlah kecil instruksi
Termasuk instruksi kompleks multi-clock
Register toRegister :”LOAD”&”STORE” adalah instruksi2 terpisah
Memori ke Memori:”LOAD”&”STORE” saling bekerjasama
Ukuran kode besar(kecepatan relatif tinggi)
Ukurang kode kecil,kecepatan rendah
Transistor banyak dipakai untuk register memori
Transistor digunakan untuk menyimpan instruksi2 kompleks


2.2.1 Karakteristik CISC dan RISC
·         Rancangan RISC dapat memperoleh keuntungan dengan mengambil sejumlah feature CISC dan Rancangan CISC dapat memperoleh keuntungan dengan mengambil sejumlah feature RISC.
·         Hasilnya adalah bahwa sejumlah rancangan RISC yang terbaru, yang dikenal sebagai PowerPC, tidak lagi “murni” RISC dan rancangan CISC yang terbaru, yang dikenal sebagai Pentium, memiliki beberapa karakteristik RISC.

2.2.2 Ciri-ciri RISC

·         Instruksi berukuran tunggal
·         Ukuran yang umum adalah 4 byte.
·         Jumlah mode pengalamatan data yang sedikit, biasanya kurang dari lima buah.
·         Tidak terdapat pengalamatan tak langsung.
·         Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi aritmetika (misalnya, penambahan dari memori, penambahan ke memori).
2.2.3 Ciri-Ciri CISC
·         Penekanan pada perangkat keras (hardware) 
·         Termasuk instruksi kompleks multi-clock
·         Memori-ke-memori: “LOAD” dan “STORE” saling bekerjasama
·         Ukuran kode kecil, kecepatan rendah
·         Transistor digunakan untuk menyimpan instruksi-instruksi kompleks
Sebaliknya, filosofi arsitektur RISC adalah arsitektur prosesor yang tidak rumit dengan membatasi jumlah instruksi hanya pada instruksi dasar yang diperlukan saja. Kerumitan membuat program dalam bahasa mesin diatasi dengan membuat bahasa program tingkat tinggi dan compiler yang sesuai. Karena tidak rumit, teorinya mikroprosesor RISC adalah mikroprosesor yang low-cost dalam arti yang sebenarnya. Namun demikian, kelebihan ruang pada prosesor RISC dimanfaatkan untuk membuat sistem-sistem tambahan yang ada pada prosesor modern saat ini. Banyak prosesor RISC yang di dalam chip-nya dilengkapi dengan sistem superscalar, pipelining, caches memory, register-register dan sebagainya, yang tujuannya untuk membuat prosesor itu menjadi semakin cepat.

2.3 Kelebihan dan Kekurangan RISC dan CISC
·         Kelebihan dari CISC :
Filosofi arsitektur CISC adalah memindahkan kerumitan software ke dalam hardware. Teknologi pembuatan IC saat ini memungkinkan untuk menamam ribuan bahkan jutaan transistor di dalam satu dice. Bermacam-macam instruksi yang mendekati bahasa pemrogram tingkat tinggi dapat dibuat dengan tujuan untuk memudahkan programmer membuat programnya. Beberapa prosesor CISC umumnya memiliki microcode berupa firmware internal di dalam chip-nya yang berguna untuk menterjemahkan instruksi makro. Mekanisme ini bisa memperlambat eksekusi instruksi, namun efektif untuk membuat instruksi-instruksi yang kompleks. Untuk aplikasi-aplikasi tertentu yang membutuhkan singlechip komputer, prosesor CISC bisa menjadi pilihan.
CISC dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan. (Jumlah perintah sedikit tetapi rumit) Konsep CISC menjadikan mesin mudah untuk diprogram dalam bahasa rakitan.Dengan intruksi yang komplek prosesor CISC merupakan pendekatan dominan karena menghemat memori dibandingkan.RISC. Instruksi kompleks seperti CISC mempermudah dalam pembuatan program. Set instruksi yang lengkap diharapkan akan semakin membuat pengguna mikroprosesor leluasa menulis program dalam bahasa assembler yang mendekati bahasa pemrograman level tinggi.
·         Kelemahan dari CISC :
Konsep ini menyulitkan dalam penyusunan compiler bahasa pemrograman tingkat tinggi. Dalam CISC banyak terdapat perintah bahasa mesin.
·         Kelebihan RISC
1.      Berkaitan dengan penyederhanaan kompiler, dimana tugas pembuat kompiler untuk menghasilkan rangkaian instruksi mesin bagi semua pernyataan HLL. Instruksi mesin yang kompleks seringkali sulit digunakan karena kompiler harus menemukan kasus-kasus yang sesuai dengan konsepnya. Pekerjaan mengoptimalkan kode yang dihasilkan untuk meminimalkan ukuran kode, mengurangi hitungan eksekusi instruksi, dan meningkatkan pipelining jauh lebih mudah apabila menggunakan RISC dibanding menggunakan CISC.
2.      Arsitektur RISC yang mendasari PowerPC memiliki kecenderungan lebih menekankan pada referensi register dibanding referensi memori, dan referensi register memerlukan bit yang lebih sedikit sehingga memiliki akses eksekusi instruksi lebih cepat.
3.      Kecenderungan operasi register ke register akan lebih menyederhanakan set instruksi dan menyederhanakan unit kontrol serta pengoptimasian register akan menyebabkan operand-operand yang sering diakses akan tetap berada dipenyimpan berkecepatan tinggi.
4.      Penggunaan mode pengalamatan dan format instruksi yang lebih sederhana.

·         Kekurangan RISC
Kelemahan utama dari RISC ialah jumalh instruksi yang sedikit. Hal ini mengakibatkan untuk melakukan suatu tugas akan dibutuhkan instruksi yang lebih banyak bila dibandingkan CISC. Hasilnya ialah jumlah ukuran program akan lebih besar bila dibandingkan CISC. Penggunaan memori akan semakin meningkat dan lalu lintas instruksi antara CPU dan memori akan meningkat pula.
Prosesor RISC, yang berkembang dari riset akademis telah menjadi prosesor komersial yang terbukti mampu beroperasi lebih cepat dengan penggunaan luas chip yang efisien. Kemajuan mutakhir yang ditunjukkan oleh mikroprosesor PowerPC 601 dan teknologi emulasi yang antara lain dikembangkan oleh IBM memungkinkan bergesernya dominasi chip-chip keluarga-86 dan kompatibelnya. Program yang dihasilkan dalam bahasa simbolik akan lebih panjang (instruksinya lebih banyak).
1.            Program berukuran lebih besar sehingga membutuhkan memori yang lebih banyak, ini tentunya kurang menghemat sumber daya.
2.            Program yang berukuran lebih besar akan menyebabkan
a.       Menurunnya kinerja, yaitu instruksi yang lebih banyak artinya akan lebih banyak byte-byte instruksi yang harus diambil.
b.      Pada lingkungan paging akan menyebabkan kemungkinan terjadinya page fault lebih besar


2.4 Contoh Aplikasi RISC
            Atmel AVR adalah modifikasi arsitektur Harvard 8-bit RISC single chip microcontroller yang di kembangkan oleh atmel pada 1996 . AVR adalah satu dari keluarga mikrokontroller pertama yang menggunakan memori on-chip flash untuk penyimpanan program, sebagai lawan untuk progammable one time pada ROM, EPROM atau EEPROM digunakan oleh mikrokontroller lain.

Gambar 2.2 Atmel AVR Atmega 8

  


BAB III
PENUTUP
3.1 KESIMPULAN
                  CISC Complex Instruction Set Computer sedangkan RISC merupakan kepanjangan dari Reduced Instruction Set Computer. Chip RISC dibangun mulai pertengahan tahun 1980 sebagai pengganti chip CISC. Pada dasarnya karakteristik CISC yg "sarat informasi" memberikan keuntungan di mana ukuran program-program yang dihasilkan akan menjadi relatif lebih kecil, dan penggunaan memory akan semakin berkurang. Hal inilah yang menyebabkan komputer-komputer pada saat itu memiliki harga yang murah. 
        Filosofi RISC berada dalam tidak satu pun chip yang menggunakan bahasa instruksi assembly yang complex, seperti yang digunakan di CISC. Untuk itulah, instruksi yang simple dan lebih cepat akan lebih baik daripada besar, complex dan lambat seperti CISC. Keuntungan RISC lainnya karena adanya instruksi yang simple, maka chip RISC hanya memiliki beberapa transistor, yang akan membuat RISC mudah didesain dan murah untuk diproduksi untuk menulis compiler yang powerful. RISC memberikan kemudahan di hardware, namun lebih kompleks di software. 




DAFTAR PUSTAKA



Senin, 16 Mei 2016

MAKALAH ORGANISASI & ARSITEKTUR KOMPUTER (BAB 7 MODUL I/O & KODE HAMMING)

MAKALAH
ORGANISASI DAN ARSITEKTUR KOMPUTER
“Modul I/O & Kode Hamming”
Dosen Pengampu :Ahmad Wilda Yuliantho, M.T

Disusun Oleh :
1.     David Kristian Lado (1510530027)
2.     Saefudin Zohri         (1510530028)
3.     Mustaal Aziz            (1510530043)
4.     Qoriatul Afrianti      (1510520003)



SEKOLAH TINGGI MANAJEMEN INFORMATIKA KOMPUTER BUMIGORA MATARAM
Jalan Ismail Marzuki Mataram Telp. (0370) 634498 Fax. (0370) 638369
E-mail :kontak@stmikabumigora.ac.id



Kata Pengantar

            Puji dan Syukur Penulis Panjatkan ke Hadirat Tuhan Yang Maha Esa karena berkat limpahan Rahmat dan Karunia-Nya sehingga penulis dapat menyusun makalah ini tepat pada waktunya. Makalah ini membahas mengenai “Modul Input-Output & Kode Hamming”.
Dalam penyusunan makalah ini, penulis banyak mendapat tantangan dan hambatan akan tetapi dengan bantuan dari berbagai pihak tantangan itu bisa teratasi. Olehnya itu, penulis mengucapkan terima kasih yang sebesar-besarnya kepada semua pihak yang telah membantu dalam penyusunan makalah ini, semoga bantuannya mendapat balasan yang setimpal dari Tuhan Yang Maha Esa.
Penulis menyadari bahwa makalah ini masih jauh dari kesempurnaan baik dari bentuk penyusunan maupun materinya. Kritik konstruktif dari pembaca sangat penulis harapkan untuk penyempurnaan makalah selanjutnya.
Akhir kata semoga makalah ini dapat memberikan manfaat kepada kita sekalian.


Mataram, 18 Mei 2016




DAFTAR ISI

KATA PENGANTAR               .....................................................................................................ii 
DAFTAR ISI                        .........................................................................................................iii
BAB 1 PENDAHULUAN             .................................................................................................4
A.    Latar Belakang           .............................................................................................................4
B.     Rumusan Masalah             .....................................................................................................4
C.     Tujuan Pembahasan              ..................................................................................................5
BAB II PEMBAHASAN           .....................................................................................................6
A.    Pengertian Modul Input-Output       .......................................................................................6
B.     Fungsi Input-Output                         ......................................................................................6
C.     Struktur Modul Input-Output           ......................................................................................7
D.    Teknik Input-Output                         ......................................................................................8
E.     Kode Hamming              ........................................................................................................9
BAB III PENUTUP                  .....................................................................................................16
A.    Kesimpulan               .............................................................................................................16
B.     Saran              ........................................................................................................................16
DAFTAR PUSTAKA            ........................................................................................................17




BAB I
PENDAHULUAN
A.    Latar Belakang
Sistem computer memiliki tiga komponen utama, yaitu : CPU, Memory (primer  & sekunder), dan peralatan masukan/keluaran (I/O) seperti printer, monitor, keyboard, mouse dan modem. Dalam menjalankan fungsinya sebagai masukan dan keluaran diperlukan modul I/O. Modul I/O merupakan peralatan antarmuka (interface) bagi sistem bus atau switch, sentral dan mengontrol satu atau lebih perangkat periperhal. Modul I/O tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi antara peripheral dan bus komputer.
Ada beberapa alasan kenapa tidak langsung dihubungkan dengan bus computer yaitu: Bervariasinya metode operasi piranti periperhal, sehingga tidak praktis apabila system computer harus menangani berbagai macam system operasi periperhal tersebut. Kecepatan transfer data piranti periperhal umumnya lebih lambat dari pada laju transfer data pada CPU Format dan panjang data   pada piranti periperhal seringkali berbeda dengan CPU, sehingga perlu modul untuk menselaraskannya. Dari beberapaalas andiatas, modul I/O memiliki 2 buah fungsi utama, yaitu:Sebagai piranti antar muka ke CPU dan memori melalui bus system dan sebagai piranti antar muka dengan peralatan periperhal lainnya menggunakan link data tertentu.
Ada beberapa metode yang digunakan untuk mendeteksi error dan mengkoreksi error yang terjadi. Salah satu-nya adalah dengan menggunakan metode hamming code. Metode ini merupakan salah satu jenis linier error correction code yang sederhana.keuntungan yang didapatkan dengan metode ini adalah cara kerjanya yang cukup sederhana dan tidak membutuhkan alokasi memori yang banyak. Oleh karena itu kelompok kami termmotovasi untuk mengungkap konsep dan mengimplementasikan metode hamming code tersebut untuk melakukan pemeriksaan dan pemulihan kesalahan ( error ) pada data berbentuk teks yang ditransmisikan dari computer yang kita gunakan. Dengan menggunakan metode hamming code kita dapat meminimalisir terjadinya kerusakan pada proses transmisi data.

B.     Rumusan Masalah
Dari latar belakang di atas, adapun rumusan masalah yang dapat kami susun adalah sebagai berikut :
1. Input-Output
-      ApakahpengertiandarimodulInput/Output?
-      BagaimanakahFungsidarimodulInput/Output ?
-      BagaimanakahStrukturdarimodulInput/Output ?
-      BagaimanakahTeknikdariInput/Output ?
2. Kode Hamming
-      Pengertian Kode Hamming
-    Implementasi Kode Hamming
-    Pengertian Bit Parity
-   Matriks GeneratorKode Hamming
-   Sirkuit Kode Hamming
-   Aplikasi Kode Hamming

C.    Tujuan Pembahasan
Supaya mahasiswa dan para pembaca makalah ini mengetahui lebih luas Apa itu Input dan Output Pada komputer yang kita pakai di kehidupan sehari-hari serta mengetahui sebarapa penting nya metode hamming code yang kami susun untuk memdetksi sebuah kesalahan pada aplikasi yang kita gunakan. Dengan metode hamming code, kita dapat meminimalisir kesalahan ( error ) yang kita temui pada saat sedang bekerja pada aplikasi yang kita gunkan. Selain itu, hamming code juga dapat membatu dan mempermudah pekerjaan kita untuk memperbaiki kesalah yang kita temui.




BAB II
PEMBAHASAN

A.       Pengertian Modul Input dan Output
Modul adalah satuan standar yang bersama - sama dengan yang lain digunakan secara bersama. Input / Output adalah suatu mekanisme pengiriman data secara bertahap dan terus menerus melalui suatu aliran data dari proses ke peranti (begitu pula sebaliknya).
Konektor Input/Output pada komputer, seperti pada keyboard, mouse paralel/serial ataupun USB. Menyediakan koneksi untuk piranti eksternal seperti kamera digital, printer dan scanner. Unit Input/Output (I/O) adalah bagian dari sistem mikroprosesor yang digunakan oleh mikroprosesor itu untuk berhubungan dengan dunia luar.
Modul I/O Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.Konektor mekanis berisi fungsi logik untuk komunikasi antara bus dan peripheral. Tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisilogika dalam melakukan fungsi komunikasi antara peripheral dan bus computer.
Modul I/O adalah suatu komponen dalam sistem komputer yang bertanggung jawab atas pengontrolan sebuah perangkat luar dan juga bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register – register CPU. Termasuk Antarmuka internal dengan komputer (CPU dan memori utama) dan perangkat eksternalnya untuk menjalankan fungsi – fungsi pengontrolan. Modul I/O memiliki dua buah fungsi utama, yaitu:
1.      Sebagai piranti antar muka ke CPU dan memori melalui bus sistem.
2.      Sebagai piranti antarmuka dengan peralatan peripheral lainnya dengan menggunakan link data tertentu.
B.      Fungsi Modul Input/Output
1. Control  and Timing
Fungsi kontrol dan pewaktuan (control & timing) merupakan hal yang penting untuk mensinkronkan kerja masing - masing komponen penyusun komputer. Dalam sekali waktu CPU berkomunikasi dengan satu atau lebih perangkat dengan pola tidak menentu dan kecepatan transfer komunikasi data yang beragam, baik dengan perangkat internal seperti register - register, memori utama, memori sekunder, perangkat peripheral. Proses tersebut bisa berjalan apabila ada fungsi kontrol dan pewaktuan  yang  mengatur sistem secara keseluruhan.
2. Komunikasi CPU
Adapun fungsi komunikasi antara CPU dan modul I/O meliputi proses – proses berikut :
a.  Command Decoding, yaitu modul I/O menerima perintah – perintah dari CPU yang dikirimkan sebaga isinya bagi bus kontrol. Misalnya, sebuah modul I/O untuk disk dapat menerima perintah: Read sector, Scan record ID, Format disk.
b.  Data, pertukaran data antara CPU danmodul I/O melalui bus data.
c. Status Reporting, yaitu pelaporan kondisi status  modul  I/O  maupun perangkat peripheral, umumnya berupa status kondisi Busy atau Ready. Juga status bermacam-macam kondisi kesalahan (error).
d. Address  Recognition
Bahwa peralatan atau komponen penyusun computer dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik, begitu pula pada perangkat peripheral, sehingga setiap modul I/O harus mengetahui alamat peripheral yang dikontrolnya.
3. Data Buffering
Tujuan utama buffering adalah mendapatkan penyesuaian data sehubungan perbedaan laju transfer data dari perangkat peripheral dengan kecepatan pengolahan pada CPU. Umumnya laju transfer data dari perangkat peripheral lebih lambat dari kecepatan CPU maupun media penyimpan.
4. Deteksi Error
Apabila pada perangkat peripheral terdapat masalah sehingga proses tidak dapat dijalankan, maka modul I/O akan melaporkan kesalahan tersebut. Misal informasi kesalahan pada peripheral printer seperti: kertas tergulung, pintahabis, kertashabis, dan lain - lain. Teknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.

C.     Struktur  Modul Input/Output
Terdapat berbagai macam modul I/O seiring perkembangan komputer itu sendiri,contoh yang sederhana dan fleksibel adalah Intel 8255A yang sering disebut PPI(Programmable Peripheral Interface).Bagaimanapun kompleksitas suatu modul I/O,terdapat kemiripan struktur, seperti terlihat pada gambar


Antarmuka modul I/O ke CPU melalui bus sistem komputer terdapat tiga saluran, yaitu saluran data, saluran alamat dan saluran kontrol. Bagian terpenting adalah blok logika I/O yang berhubungan dengan semua peralatan antarmuka peripheral, terdapat fungsi pengaturan dan switching pada blok ini.

D. Teknik Input/Output
Terdapat tiga buah teknik operasi I/O, yaitu : I/O terprogram, interrupt-driven I/O,dan DMA (Dirrect Memory Access)
1.      I/O Terprogram
Pada I/O terprogram, data saling dipertukarkan antara CPU dan modulI/O. CPU mengeksekusi program yang memberikan operasi I/O kepada CPUsecara langsung seperti pemindahan data, pengiriman perintah baca atautulis dan monitoring perangkat. I/O terprogram mempunyai kelemahan sebagai berikut :
a. CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/Osehingga 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.
b. Seluruh proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan Untuk melaksanakan perintah-perintah I/O, CPU akan mengeluarkan sebuah alamat bagi modul I/O dan perangkat periperhalnya sehingga terspesifikasi secara khusus dan sebuah perintah I/O yang akandilakukan.Terdapat empat klasifikasi perintah input/output, yaitu:
1.      Perintah Control yaitu perintah yang digunakan untuk mengaktivasiperangkat periperhal dan memberitahukan tugas yang diperintahkankepadanya.
2.      Perintah Test, yaitu perintah yang digunakan CPU untuk menguji berbagaikondisi status modul I/O dan periperhalnya. CPU perlu mngetahuiperangkat periperhalnya dalam keadaan aktif dan siap digunakan, jugauntuk megetahui operasi-operasi I/O yang dijalankan serta mendeteksi kesalahannya.
3.      Perintah Read, yaitu perintah pada modul I/O untuk mengambil suatu paketdata kemudian menaruhnya di dalam buffer internal. Proses selanjutnyapaket data dikirim melalui bus data setelah terjadi sinkronisasi data maupun kecepatan transfernya.
4.      Perintah Write, Perintah ini kebalikan dari read. CPU memerintahkanmodul I/O untuk mengambil data dari bus data untuk diberikan padaperangkat periperhal tujuan data tersebut
2.      Interrupt - Driven I/O
Teknik interupt driven I/O memungkinkan proses memungkinkan proses tidakmembuang-buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/Opada modul I/O, bersamaan perintah I/O dijalankan oleh modul I/O, makaCPU melakukan eksekusi perintah-perintah lainnya. Apabila modul I/Otelas selesai menjalankan instruksi yang diberikan padanya, maka modulI/O tersebut kemudian akan memberikan interupsi pada CPU bahwa tugasnyatelah selesai.Dalam teknik ini kendali perintah masih menjadi tanggungjawab CPU, baik pengambilan perintah dari memori maupun pelaksanaan isiperintah tersebut. Terdapat selangkah kemajuan dari teknik sebelumnya,yaitu CPU melakukan multitasking beberapa perintah sekaligus sehinggatidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisimodul I/O adalah modul I/O menerima perintah, misalnya read. Kemudianmodul I/O melaksanakan perintah pembacaan dari periperhal dan meletakkanpaket data ke register data modul I/O, selanjutnya modul mengeluarkansinyal interupsi ke CPU melalui saluran kontrol. Kemudian mosul menunggudatanya diminta CPU. Saat permintaan terjadi, modul meletakkan data padabus data dan modul siap menerima perintah selanjutnya.
3.      Direct Memory Access (DMA)
Teknik yang dijelaskan sebelumnya yaitu I/O terprogram danInterrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi padamodul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada:
a. Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
b. Kerja CPU terganggu karena adanya interupsi secara langsung.
Bertolakdari kelemahan di atas, apalagi untuk menangani transfer data bervolumebesar dikembangkan teknik yang lebih baik, dikenal dengan Direct MemoryAccess (DMA). Prinsip kerja DMA adalah CPU akan mendelegasikan kerja I/Okepada DMA, CPU hanya akan terlibat pada awal proses untuk memberikaninstruksi lengkap pada DMA dan akhir proses saja. Dengan demikian CPUdapat menjalankan proses lainnya tanpa banyak terganggu denganinterupsi.
E.     Kode Hamming
1. Pengertian Kode Hamming
Kode hamming diperkenalkan oleh Ricard Hamming pada tahun 1950 sabagai kode tunggal pengoreksi kesalahan. Kode Hamming adalah seperangkat koreksi kesalahan kode yang dapat digunakan untuk mendeteksi dan memperbaiki kesalahan bit yang dapat terjadi ketika data komputer dipindahkan atau disimpan.
Metode hamming code merupakan salah satu metode pendeteksi error dan pengoreksi error ( error detection and error correction ) yang paling sederhana. Metode ini menggunakan operasi pendeteksian error maupun pengkoreksian error. Input dan output dari metode ini merupakan bilangan binner. Hamming code meruapakan salah satu jenis linier error correcting code yang sederhana dan banyak digunakan pada peralatan elektronik.
Metode hamming code bekerja dengan menyisipkan beberapa buah check bit ke data. Jumlah check bit yang di sisipkan tergantung pada panjang data. Hamming code juga memiliki rumus tersendiri untuk mendeteksi kesalahan ( error ).
Seperti koreksi kesalahan kode, kode Hamming memanfaatkan konsep paritas dan bit paritas, yang merupakan bit yang ditambahkan ke data sehingga validitas data dapat diperiksa ketika dibaca atau setelah telah diterima di transmisi data. Menggunakan lebih dari satu bit paritas, kode koreksi kesalahan tidak bisa hanya mengidentifikasi kesalahan bit tunggal dalam unit data, tetapi juga lokasi di data unit.
2. Implementasi Hamming Code
Contoh proses hamming code dengan mengunakan kata “ halo ” ;
-          Penyisipan check bit
Hitung panjang data masukan : HALO . Halo = 4 karakter. 1 karakter = 1 byte = 8 bit. Halo : 32 bit = 0100 | 1000 | 0100 | 0001 | 0100 | 1100 | 0100 | 1111 . 32 bit = 2 pangkat 5 bit. Maka check bit = 5 + 1 = 6 bit.
Sehingga panjang bit yang akan di kirim : 32 + Seluruh proses pada fase perancangan akan di transformasikan pada fase pemrograman ke dalam produk perangkat lunak. Pada fase ini, perangkat lunak di bangun dengan menggunakan bahasa pemrograman. Berikut adalah kebutuhan sumber daya yang di perlukan untuk menjalankan perngkat lunak dan tampilan ketika perangkat lunak tersebut di jalankan .6 bit = 38 bit. Hasilnya: Panjang bit yang di terima = 38, original bit = 32, check bit = 6. Check bit yang di dapat = 010110 dan check bit yang di ekstrak 010110. Kesimpulannya, bit yang kita dapat sama, itu membuktikan bahwa kata “ halo “ yang kita kirimkan tidak terdapat keslahan. Jika bit yang terdeteksi tidak sama dengan bit original nya, maka bit tersebut mengalamin sebuah kesalahan. Contoh nya saja. Original = 010110 dan setelah di check hasil nya berbeda menjadi 011110
3.      Pengertian Bit Parity
Bit Parity atau disebut juga bit pemeriksa adalah salah satu metode yang digunakan pada modul I/O dalam mendeteksi kesalahan. Bit paritas bekerja untuk medeteksi kesalahan pada level bit. Bit partisi yaitu bit tambahan yang diberikan pada akhir sebuah byte atau baris terakhir untuk digunakan dalam proses pengecekan kebenaran data pada saat penyimpanan atau proses transmisi.
Terdapat 2 macam cara penambahan Bit Pariti yaitu :
1.      Pariti Ganjil (Odd Parity)
Bit Paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan bit tersebut (tidak termasuk bit paritas) adalah genap, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi ganjil.
2.      Pariti Genap (Even Parity)
Bit paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan tersebut (tifak termasuk bit paritas) adalah ganjil, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi genap.
Dan perlu diingat sifat gerbang XOR berikut ini:
          0 + 0 = 0
0 + 1 = 1                  Ganjil
1 + 0 = 1                  Ganjil
1 + 1 = 0                  Genap
Sebagai contoh, kode BCD 8421 yang dimodifikasi dengan menambahkan parity bit.
Tabel kode BCD dengan Bit Parity [5]

Desimal
Kode BCD
Kode BCD Parity Ganjil
Kode BCD Dengan Parity Genap
B8
B4
B2
B1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
0
0
0
1
1
2
0
0
1
0
0
0
1
0
0
0
0
1
0
1
3
0
0
1
1
0
0
1
1
1
0
0
1
1
0
4
0
1
0
0
0
1
0
0
0
0
1
0
0
1
5
0
1
0
1
0
1
0
1
1
0
1
0
1
0
6
0
1
1
0
0
1
1
0
1
0
1
1
0
0
7
0
1
1
1
0
1
1
1
0
0
1
1
1
1
8
1
0
0
0
1
0
0
0
0
1
0
0
0
1
9
1
0
0
1
1
0
0
1
1
1
0
0
1
0











  

3. Cara Kerja Kode Hamming
     Tabel Kode Hamming

Bagaimana bentuk data yang ditransmisikan dengan kode Hamming, jika diketahui bit data = 1010 ?
Jawab:
a1 = a3 + a5 + a7 -> a1 = 1 + 0 + 0 = 1
a2 = a3 + a6 + a7 -> a2 = 1 + 1 + 0 = 0
a4 = a5 + a6 + a7 -> a3 = 0 + 1 + 0 = 1
Sehingga bentuk data yang ditransmisikan menjadi:
1011010
Contoh penggunaan kode hamming lainnya:
Position 1 checks bits 1,3,5,7,9,11:
? _ 1 _ 0 0 1_ 1 0 1 0. Even parity di set position 1 ke 0: 0 _ 1 _ 0 0 1_ 1 0 1 0
Position 2 checks bits 2,3,6,7,10,11:
0 ? 1_ 0 0 1 _ 1 0 1 0. Odd parity di set position 2 ke 1: 0 1 1 _ 0 0 1 _ 1 0 1 0
Position 4 checks bits 4,5,6,7,12:
0 1 1 ? 0 0 1 _ 1 0 1 0. Odd parity di set position 4 ke 1: 0 1 1 1 0 0 1_ 1 0 1 0
Position 8 checks bits 8,9,10,11,12:
0 1 1 1 0 0 1 ? 1 0 1 0. Even parity di set position 8 ke 0: 0 1 1 1 0 0 1 0 1 0 1 0
Untuk informasi n-bit, cara pengecekan adalah :
1.        Tanda semua posisi bit yang merupakan pangkat dua sebagai bit parity (posisi 1, 2, 4, 8, 16, 32, 64, ...)
2.        Posisi yang lain digunakan sebagai bit data yang akan dikodekan (posisi 3, 5, 6, 7, 9, 10, 11, 12, 13, ...)
3.        Masing-masing bit pengecek menghitung bit setiapposisi dengan cara menge-cek dan melewati, sebagaiberikut:
Posisi 1 : cek 1 bit, lewat 1 bit, cek 1 bit, lewat 1 bit dsb(1,3,5,7,9,11,13,15…)
Posisi 2 : cek 2 bit, lewat 2 bit, cek 2 bit, lewat 2 bit dsb(2,3,6,7,10,11,14,15,…)
Posisi 4 : cek 4 bit, lewat 4 bit, cek 4 bit, lewat 4 bit dsb(4,5,6,7,12,13,14,15,20,21,22,23, …)
Posisi 8 :cek 8 bit, lewat 8 bit, cek 8 bit, lewat 8 bit dsb(8-15,24-31,40-47,...)
Posisi 32 : cek 32 bit, lewat 32 bit, cek 32 bit, lewat 32bit, dsb(32-63,96-127,160-191,...)
5. Matriks Generator Kode Hamming
·         Kode ini dapat dibentuk dengan sebuah algoritma yang sederhana matriks parity check. Contoh kode (7, 4), dibentuk dengan cara berikut:
·         Biner 1 sampai 7.
·         Dalam matriks parity check berikut, urutan kolom dari kirike kanan dibentuk dengan urutan: 7, 6, 5, 3, 1, 2 dan 4,dengan pembacaan bit dari bawah ke atas.Dalam check bit paritas, bernilai bit parity = 1 jika total bit ™” diposisi yang dicek adalah ganjil (Odd) dan berinilai 0 jika total bit ™” adalah genap (Even).
Suatu Hamming codebisa mempunyai “single-error correcting code” atau’ double error detecting”, bila suatu Hamming code berupa single error, maka bila ada single error yang muncul selama deteksi transmissi sinyal, maka nilai resultante syndrome adalah “bukan nol (non-zero) dan terdiri dari bilangan bulat (odd number) dari 1, bila double error yang terjadi,nilai syndrome juga merupakan nonzerotetapi biasanya angka ganjil (even number) dari 1. Bila Hamming code digunakan untuk deteksi kesalahan pada kanal BSC maka besarnya Probability :Pu(E) dapat dihitung dari rumus kombinasi dari rumus Probability dari kesalahan yang tidak dapat dideteksi, biasa disebut dari Probability dari Mac Williamsebesar:
Pu (E) = (1-p)
Dimana A dihitung dengan deret polinom.
6. Sirkuit Kode Hamming
Untuk dapat membayangkan bentuk implementasi dari bentuk hardware rangkaian kode Hamming dapat diperjelas dengan contoh berikut. Bila dianggap suatu linier kode dari bentuk Hamming(7,3) mempunyai matrik parity checksebesar:
H= kode tersebut mempunyai : 23= 8 buah co-setsehingga terdapat delapan buah error patern yang mungkin untuk dikoreksi termasuk semua vektor nolnya, dan kode ini mempunyai jarak: 3 yang mampu mengkoreksi kesalahan vector error-nya berbobot: 1 dan nol.
7. Aplikasi Kode Hamming
Sinyal-sinyal dari sensor telemetri biasanya mempunyai frekwensi yang rendah tersebut kemudian di multiplexing menjadi seri dari tadinya semula berbentuk paralel, biasanya sensor telemetri satelit yang merupakan pengotrolan dari kesehatan satelit tidaklah yang tunggal (satu) tetapi ada beberapa. Pada satelit mikro TUBSAT digunakan sebanyak :12 kanal telemtri satelit secara paralel, kemudian setelah sinyal analog dari sensor dimultiplexing kemudian dijadikan digital lalu dirubah kedalam bentuk kode Hamming digital sebelum dimodulasi dengan frekwensi pembawa. Di-pesaygwat penerima sinyal, sebaliknya kode ini di-rekontruksikan kembali. Bila dalam penerimaan terjadi kesalahan, kesalahan data ini dikoreksi sehingga dapat berbentuk aslinya kembali. Alat koreksi tersebut dinamakan ACK(Automatic Check Control) yang dapat mengoreksi kesalahan tersebut, koreksi kesalahan tersebut memerlukan waktu beberapa lama.




BAB III
PENUTUP

A.    Kesimpulan
1. Modul I/O Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.
2.  Fungsi Modul Input/Output ialah:
a.       Control  andTiming
b.      Komunikasi CPU
c.       Data Buffering
d.      Deteksi Error
3. Struktur  Modul Input/Output
Terdapat berbagai macam modul I/O seiring perkembangan komputer itu sendiri, contoh yang sederhana dan fleksibel adalah  intel 8255A yang sering disebut PPI (Programmable Periperhal Interface).
4. Teknik Input/Output Terdapat tiga buah teknik operasi I/O, yaitu : I/O terprogram, interrupt-driven I/O,dan DMA (Dirrect Memory Access).Kode Hamming merupakan jalur atau susunan rumus untuk mendeteksi sebuah kesalahan dalam system operasi. dengan hamming code pekerjaan kita dalam meminimalisir sebuah kesalahan jadi sangan mudah. Hamming code merupakan suatu cara untuk memperbaiki kesalahan – kesalahan dalam system operasi yang kita gunakan dengan ketentuan rumus yang sudah di tetapkan pada metode hamming.
B.     Saran
Demikianlah yang dapat kami sampaikan mengenai materi menyadari pentingnya agama dalam keidupan yang menjadi bahasan dalam makalah ini, tentunya banyak kekurangan dan kelemahan kerena terbatasnya pengetahuan kurangnya rujukan atau referensi yang kami peroleh hubungannya dengan makalah ini. Penulis banyak berharap kepada para pembaca yang budiman memberikan kritik saran yang membangun kepada kami demi sempurnanya makalah ini. Semoga makalah ini dapat bermanfaat bagi penulis para pembaca, khusus pada penulis. Aamin…



Daftar Pustaka
William Staliings. 2005. Organisasi & Arsitektur Komputer : RancanganKierja. Jilid 1. Jakarta: PT Indeks kelompok Gramedia 
William Staliings.1996. OrganisasidanSistemKomputer.EdisibahasaIndonesia.Jilid 1.
Jakarta: PT Prehalindo
Andrew S. Tanenbaum.2001. OrganisaiKomputerTerstuktur. Jilid 1. Jakarta. Salemba
Teknika
Port Komputer - http://www.anneahira.com/port-komputer.htmSejarah Port Komputer - http://ripblaze.blogspot.com/search?q=sejarah+port

http://fundester.blogspot.co.id/2015/02/makalah-hamming-code.html
 

YouLikeHits.com