Rabu, 03 Juni 2015

P3 struktur komputer

Struktur main memori
 
CPU hanya dapat menyimpan data dan instruksi di register yang berukuran kecil sehingga tidak dapat menyimpan semua informasi yang dibutuhkan untuk keseluruhan proses program. Untuk mengatasi hal ini, maka CPU harus dilengkapi dengan alat penyimpan yang berkapasitas lebih besar yaitu memori utama. Unit ini dapat dibayangkan sebagai sekumpulan kotak-kotak yang masing-masing dapat menyimpan sepenggal informasi baik berupa data maupun instruksi. Tiap-tiap lokasi dari kotak ditunjukkan oleh suatu alamat (address), yaitu berupa nomor yang menunjukkan lokasi tertentu dari kotak memori.
Ukuran memori ditunjukkan oleh satuan byte, misalnya 1 Mb, 4 Mb, 8 Mb, atau bahkan ada yang sampai 2Gb. Pada umumnya 1 byte memori terdiri dari 8 – 32 bit (binary digit), yaitu banyaknya digit biner (0 atau 1) yang mampu disimpan dalam satu kotak memori.
A.      Random Access Memory (RAM)
Semua data dan program yang dimasukkan melalui alat input akan disimpan terlebih dahulu di memori utama, khususnya RAM, yang dapat diakses secara acak (dapat diisi/ditulis, diambil, atau dihapus isinya) oleh pemrogram. Struktur RAM terbagi menjadi empat bagian utama, yaitu:
1.       Input storage, digunakan untuk menampung input yang dimasukkan melalui alat input.
2.       Program storage, digunakan untuk menyimpan semua instruksi-instruksi program yang akan diakses.
3.       Working storage, digunakan untuk menyimpan data yang akan diolah dan hasil pengolahan.
4.       Output storage, digunakan untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan ke alat output.
Input yang dimasukkan melalui alat input akan ditampung terlebih dahulu di input storage. Bila input tersebut berupa program maka akan dipindahkan ke program storage, dan bila berbentuk data maka akan dipindahkan ke working storage. Hasil dari pengolahan juga ditampung terlebih dahulu di working storage dan bila akan ditampilkan ke alat output maka hasil tersebut dipindahkan ke output storage.
B.      Read Only Memory (ROM)
Dari namanya, ROM hanya dapat dibaca sehingga pemrogram tidak bisa mengisi sesuatu ke dalam ROM. ROM sudah diisi oleh pabrik pembuatnya berupa sistem operasi yang terdiri dari program-program pokok yang diperlukan oleh sistem komputer, seperti misalnya program untuk mengatur penampilan karakter di layar, pengisian tombol kunci papan ketik untuk keperluan kontrol tertentu, dan bootstrap program. Program bootstrap diperlukan pada saat pertama kali sistem komputer diaktifkan. Proses mengaktifkan komputer pertama kali ini disebut dengan booting, yang dapat berupa cold booting atau warm booting.
Cold booting merupakan proses mengaktifkan sistem komputer pertama kali untuk mengambil program bootstrap dari keadaan listrik komputer mati (off) menjadi hidup (on). Sedangkan warm booting merupakan proses pengulangan pengambilan program bootstrap pada saat komputer masih hidup dengan cara menekan tiga tombol tombol pada papan ketik sekaligus, yaitu Ctrl, Alt, dan Del. Proses ini biasanya dilakukan bila sistem komputer macet, daripada harus mematikan aliran listrik komputer dan menghidupkannya kembali.
Instruksi-instruksi yang tersimpan di ROM disebut dengan microinstruction atau firmware karena hardware dan software dijadikan satu oleh pabrik pembuatnya. Isi dari ROM ini tidak boleh hilang atau rusak karena bila terjadi demikian, maka sistem komputer tidak akan bisa berfungsi. Oleh karena itu, untuk mencegahnya maka pabrik pembuatnya merancang ROM sedemikian rupa sehingga hanya bisa dibaca, tidak dapat diubah-ubah isinya oleh orang lain. Selain itu, ROM bersifat non volatile supaya isinya tidak hilang bila listrik komputer dimatikan.
Pada kasus yang lain memungkinkan untuk merubah isi ROM, yaitu dengan cara memprogram kembali instruksi-instruksi yang ada di dalamnya. ROM jenis ini berbentuk chip yang ditempatkan pada rumahnya yang mempunyai jendela di atasnya. ROM yang dapat diprogram kembali adalah PROM (Programmable Read Only Memory), yang hanya dapat diprogram satu kali dan selanjutnya tidak dapat diubah kembali. Jenis lain adalah EPROM (Erasable Programmable Read Only Memory) yang dapat dihapus dengan sinar ultraviolet serta dapat diprogram kembali berulang-ulang. Disamping itu, ada juga EEPROM (Electrically Erasable Programmable Read Only Memory) yang dapat dihapus secara elektronik dan dapat diprogram kembali.
C.      BUS
Hubungan antara CPU dengan memori utama ataupun dengan alat-alat input/output (I/O) dilakukan melalui suatu jalur yang disebut dengan bus. Hubungan antara CPU dengan memori utama melalui jalur bus yang dilekatkan pada MDR, MAR, dan unit kendali dalam CPU. Sedangkan bus yang menghubungkan CPU dengan alat-alat I/O tidak dilekatkan langsung ke alat-alat I/O, tetapi dapat dilakukan melalui suatu alat I/O port atau DMA controller atau I/O channel.
Bus merupakan suatu sirkuit yang merupakan jalur transportasi informasi antara dua atau alat-alat dalam sistem komputer. Bus yang menghubungkan antara CPU dengan memori utama disebut dengan internal bus, sedang yang menghubungkan CPU dengan alat-alat I/O disebut external bus. Di dalam internal bus, hubungan antara CPU dengan memori utama dilakukan melalui data bus yang dihubungkan dengan MDR, dan melalui address bus yang dihubungkan dengan MAR, serta melalui control bus yang dihubungkan dengan control unit.
D.      PEMROSESAN INSTRUKSI
Jika pemrogram menginginkan CPU untuk mengerjakan sesuatu, maka harus ditulis suatu instruksi yang dapat dipahami oleh CPU. Kumpulan dari instruksi inilah yang disebut dengan program. Program yang akan diproses dan data yang akan diolah oleh CPU harus diletakkan terlebih dahulu di memori utama. Proses ini yang biasa kita lakukan dengan mengetikkan nama program pada prompt DOS, atau meng-klik ikon pada sistem operasi Windows. Instruksi-instruksi yang dapat diproses oleh CPU adalah instruksi-instruksi yang sudah dalam bentuk bahasa mesin.
Tahap pertama dari pemrosesan suatu instruksi oleh CPU disebut dengan instruction fetch, yaitu proses CPU mengambil atau membawa instruksi dari memori utama ke CPU. Tahap selanjutnya (kedua) disebut instruction execute, yaitu proses dari CPU untuk mengerjakan instruksi yang sudah diambil dari memori utama dan sudah berada di IR register.
Waktu yang dibutuhkan untuk menyelesaikan tahap pertama disebut waktu instruksi (instruction time), dan waktu yang dibutuhkan untuk menyelesaikan tahap kedua disebut waktu eksekusi (execution time). Sedangkan total waktu yang dibutuhkan untuk kedua tahap tersebut dinamakan waktu siklus (cycle time).
Beberapa pabrik komputer mengukur kecepatan CPU berdasarkan lamanya melakukan satu siklus mesin yang diukur dengan satuan megahertz (Mhz), dimana satu Mhz berarti dapat diselesaikan satu juta siklus per detiknya. Suatu pengukur waktu yang disebut dengan clock akan berdetak untuk tiap-tiap siklus yang dilakukan. Misalnya suatu pemroses 16 Mhz berarti clock akan berdetak sebanyak 16 juta kali tiap detiknya.
struktur input output
Umumnya sistem operasi mempunyai device driver untuk setiap device controller. Dalam memulai pengoperasian I/O, device driver me-load register yang tepat melalui device controller. Kemudian device controller memeriksa isi dari register tersebut untuk menentukan jenis aksi apa yang harus dilakukan (contoh pembacaan karakter dari keyboard). Controller mulai mentransfer data dari peralatan ke buffer lokal. Ketika selesai mentransfer, controller memberitahukan kepada device driver bahwa pekerjaan telah selesai melalui interrupt. Device driver kemudian mengembalikan pengontrolan ke sistem operasi atau mengirimkan informasi status.
Ada dua macam tindakan jika ada operasi I/O . Kedua macam tindakan itu adalah:
1.     Setelah proses I/O dimulai, kendali akan kembali ke user program saat proses I/O selesai (Synchronous). Instruksi wait menyebabkan CPU idle sampai interrupt berikutnya. Akan terjadi Wait loop (untuk menunggu akses berikutnya). Paling banyak satu proses I/O yang berjalan dalam satu waktu.
2.     Setelah proses I/O dimulai, kendali akan kembali ke user program tanpa menunggu proses I/O selesai (Asynchronous). System call permintaan pada sistem operasi untuk mengizinkan user menunggu sampai I/O selesai.Device-status table mengandung data masukkan untuk tiap I/O device yang menjelaskan tipe, alamat, dan keadaannya. Sistem operasi memeriksa I/O device untuk mengetahui keadaan device dan mengubah tabel untuk memasukkan interrupt. Jika I/O device mengirim/mengambil data ke/dari memory hal ini dikenal dengan nama (Direct Memory Access) DMA.

Dalam format ini operasi interrupt driven I/O hanya melakukan transfer data dengan jumlah yang kecil, bila terjadi pemindahan data yang besar akan terjadi overhead. Solusi masalah dapat dipecahkan melalui penggunaan DMA (Direct Memory Access). Sesudah setting up buffer-buffer, pointer dan penghitung I/O device, device controller mentransfer sejumlah blok data secara langsung ke/dari buffer penyimpannya ke memori tanpa campur tangan CPU. Hanya satu interrupt dibangkitkan per blok, untuk memberitahukan device driver bahwa operasinya selesai, daripada satu interrupt per byte dibangkitkan pada peralatan dengan kecepatan rendah. Sementara controller melakukan operasinya, CPU dapat mengerjakan proses yang lain.


direct memori access
Digunakan untuk I/O device yang dapat memindahkan data dengan kecepatan tinggi (mendekati frekuensi bus memori). Device controller memindahkan data dalam blok-blok dari buffer langsung ke memory utama atau sebaliknya tanpa campur tangan prosesor. Interrupt hanya terjadi tiap blok bukan tiap word atau byte data. Seluruh proses DMA dikendalikan oleh sebuah controller bernama DMA Controller (DMAC) . DMA Controller mengirimkan atau menerima signal dari memori dan I/O device. Prosesor hanya mengirimkan alamat awal data, tujuan data, panjang data ke DMA Controller . . Interrupt pada prosesor hanya terjadi saat proses transfer selesai. Hak terhadap penggunaan bus memory yang diperlukan DMA controller didapatkan dengan bantuan bus arbiter yang dalam PC sekarang berupa chipset Northbridge .


bus
Suatu jalur transfer data yang menghubungkan setiap device pada komputer. Hanya ada satu buah device yang boleh mengirimkan data melewati sebuah bus, akan tetapi boleh lebih dari satu device yang membaca data bus tersebut. Terdiri dari dua buah model: Synchronous bus di mana digunakan dengan bantuan clock tetapi berkecepatan tinggi, tapi hanya untuk device berkecepatan tinggi juga; Asynchronous bus digunakan dengan sistem handshake tetapi berkecepatan rendah, dapat digunakan untuk berbagai macam device . 

.register
Tempat penyimpanan beberapa buah data volatile yang akan diolah langsung di prosesor yang berkecepatan sangat tinggi. Register ini berada di dalam prosesor dengan jumlah yang sangat terbatas karena fungsinya sebagai tempat perhitungan/komputasi data


cache memori
Tempat penyimpanan sementara ( volatile ) sejumlah kecil data untuk meningkatkan kecepatan pengambilan atau penyimpanan data di memori oleh prosesor yang berkecepatan tinggi. Dahulu cache disimpan di luar prosesor dan dapat ditambahkan. Misalnya pipeline burst cache yang biasa ada di komputer awal tahun 90-an. Akan tetapi seiring menurunnya biaya produksi die atau wafer dan untuk meningkatkan kinerja, cache ditanamkan di prosesor. Memori ini biasanya dibuat berdasarkan desain static memory.


random access memory - main memory
Tempat penyimpanan sementara sejumlah data volatile yang dapat diakses langsung oleh prosesor. Pengertian langsung di sini berarti prosesor dapat mengetahui alamat data yang ada di memori secara langsung. Sekarang, RAM dapat diperoleh dengan harga yang cukup murah dangan kinerja yang bahkan dapat melewati cache pada komputer yang lebih lama.

extension memory
Tambahan memory yang digunakan untuk membantu proses-proses dalam komputer, biasanya berupa buffer. Peranan tambahan memori ini sering dilupakan akan tetapi sangat penting artinya untuk efisiensi. Biasanya tambahan memori ini memberi gambaran kasar kemampuan dari perangkat tersebut, sebagai contoh misalnya jumlah VGA memory, soundcard memory.


secondary storage
Media penyimpanan data yang non-volatile yang dapat berupa Flash Drive, Optical Disc, Magnetic Disk, Magnetic Tape. Media ini biasanya daya tampungnya cukup besar dengan harga yang relatif murah. Portability-nya juga relatif lebih tinggi.

Tidak ada komentar:

Posting Komentar