1
ALAT PEMROSES CENTRAL PROCESSING UNIT (CPU)
Merupakan tempat pemrosesan instruksi-instruksi program. Pada komputer mikro, processor ini disebut dengan microprocessor. CPU terdiri dari dua bagian utama, yaitu control unit dan arithmetic and logic unit. Disamping dua bagian utama tersebut, CPU juga mempunyai beberapa simpanan yang berukuran kecil yang disebut register.
Microprocessor
CONTROL UNIT (CU) Tugas Control Unit adalah : 1. Mengatur dan mengendalikan alat-alat input dan output 2. Mengambil instruksi-instruksi dari main memory 3. Mengambil data dari main memory kalau diperlukan oleh proses 4. Mengirim instruksi ke Arithmetic and Logic Unit bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja Arithmetic and Logic Unit 5. Menyimpan hasil proses ke main memory ARITHMETIC AND LOGIC UNIT (ALU) Tugas Arithmetic and Logic Unit adalah : 1. Melakukan semua perhitungan aritmatika seperti +, -, /, * 2. Melakukan keputusan dari operasi logika sesuai dengan instruksi program seperti =, <>, <, <=, >, >= REGISTER Merupakan simpanan kecil yang mempunyai kecepatan tinggi dibandingkan dengan kecepatan perekaman atau pengambilan data di main memory. Register digunakan untuk menyimpan instruksi dan data yang sedang diproses oleh CPU, sedang instruksi-instruksi dan data lainnya yang menunggu giliran untuk diproses masih tersimpan di main memory. Ada tiga jenis memori yang digunakan dalam sistem komputer, yaitu : 1. Register Digunakan untuk menyimpan instruksi dan data yang sedang diproses 2. Main Memory Digunakan untuk menyimpan instruksi dan data yang akan diproses dan hasil dari pengolahan 3. External Memory Digunakan untuk menyimpan program dan data secara permanen Register yang berhubungan dengan instruksi terdiri dari : • Instruction Register Disebut juga program register yang digunakan untuk menyimpan intruksi yang sedang diproses
2 •
Program Counter Disebut juga control counter atau instruction counter yaitu register yang digunakan untuk menyimpan alamat (address) lokasi dari main memory yang berisi instruksi yang sedang diproses
Register yang berhubungan dengan data terdiri dari : • General-purpose Register Diberi simbol R0, R1, R2, …, Rn yang digunakan untuk menampung data yang sedang diolah (operand register) dan untuk menampung hasil pengolahan (accumulator)
AX :
AH
AL
BX :
BH
BL
CX :
CH
CL
DX :
DH
DL
8 bit
8 bit
Accumulator dan Operand Register di Microprocessor Intel 8088
16 bit Pada gambar, 16 bit register dengan nama AX, BX, CX dan DX masingmasing terdiri dari pasangan 8 bit register. Register AX terdiri dari 16 bit dengan pasangan 8 bit register AH (A-High byte) dan AL (A-Low byte). Register lain yang digunakan sebagai jembatan antara CPU dengan main memory adalah : Memory Data Register digunakan untuk menampung data atau instruksi hasil pengiriman dari main memory ke CPU atau untuk menampung data yang akan direkam ke main memory dari hasil pengolahan di CPU Memory Address Register Digunakan untuk menampung alamat data atau instruksi di main memory yang akan diambil atau yang akan direkamkan. Sebagai tambahan dari register, beberapa CPU menggunakan suatu cache memory (scratch-pad memory / buffer memory) agar kerja dari CPU lebih efisien dan mengurangi waktu yang terbuang. Cache memory diletakkan antara CPU dengan main memory
ARRAY PROCESSOR
Array processor atau co-processor adalah suatu procesor terpisah yang digunakan untuk memecahkan proses perhitungan aritmatika yang besar dan sulit dengan membagi perhitungan tersebut dan dilakukan bersama-sama antara central processor dan array processor Array processor disebut juga sebagai math-processor atau numeric data processor.
3
MAIN MEMORY
Main memory dapat dibayangkan sebagai kumpulan kotak-kotak yang masing dapat menyimpan suatu penggal informasi baik berupa data maupun instruksi. Umumnya 1 byte memory terdiri dari 8 bit dan tiap bit diwakili oleh 1 atau 0. Kombinasi bit dalam1 byte tersebut membentuk suatu kode yang mewakili isi dari lokasi memory. Kode yang digunakan untuk mewakilinya tergantung dari komputer yang digunakan, dapat membentuk sistem kode BCD (Binary-Coded Decimal) , sistem kode SBCDIC (Standard Binary Coded Decimal Interchange Code), sistem kode EBCDIC (Extended Binary Coded Decimal Interchange Code) atau sistem kode ASCII (American Standard Code for Information Interchange). Misalnya suatu komputer mempunyai kapasitas memory 256 Kb atau 262.144 byte, yang berarti mempunyai 262.144 lokasi memori. Alamat dari memori ini adalah bernomor 000000 sampai dengan 262.143. Main memory terdiri dari : 1. RAM (Random Access Memory) Merupakan memori yang dapat diisi dan diambil isinya oleh programmer. Semua data dan program yang dimasukkan lewat alat input akan disimpan terlebih dahulu di RAM. Struktur dari RAM, dibagi menjadi : • Input Storage, digunakan untuk menampung input yang dimasukkan lewat alat input • Program Storage, digunakan untuk menyimpan semua instruksi program yang akan diproses • Working Storage, digunakan untuk menyimpan data yang akan diolah dan hasil dari pengolahan • Output Storage, digunakan untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan ke alat output 2. ROM (Read Only Memory) Memori ini hanya dapat dibaca saja, programer tidak bisa mengisi sesuatu ke dalam ROM. Isi ROM sudah diisi oleh pabrik pembuatnya berupa sistem operasi yang terdiri dari program-program pokok yang diperlukan oleh sistem komputer, seperti program untuk mengatur penampilan karakter, pengisian tombol kunci dan bootstrap program. Bootstrap program diperlukan pada waktu pertama kali sistem komputer diaktifkan, yang proses ini disebut dengan istilah booting, yang terdiri dari : • Cold booting, yaitu proses mengaktifkan sistem komputer pertama kali untuk mengambil bootsrap program dari keadaan listrik komputer mati. • Warm booting, yaitu proses pengulangan pengambilan bootstrapprogram dalam keadaan komputer masih hidup. Instruksi yang tersimpan di ROM disebut dengan microinstruction atau microcode atau disebut juga firmware. Isi dari ROM tidak boleh hilang atau rusak, karena dapat menyebabkan sistem komputer tidak berfungsi. ROM bersifat non volatile, artinya isinya tidak hilang bila listrik komputer dimatikan. Jenis-jenis ROM : • PROM (Programmable Read Only Memory), yaitu ROM yang dapat diprogram sekali saja dan tidak dapat diubah kembali
4 • •
EPROM (Erasable Programmable Read Only Memory), yaitu ROM yang dapat dihapus dengan sinar ultra violet serta dapat diprogram kembali berulang-ulang EEPROM (Electrically Erasable Programmable Read Only Memory), yaitu ROM yang dapat dihapus secara elektronik dan dapat diprogram kembali
JENIS-JENIS MAIN MEMORY
Berdasarkan komponen yang digunakan terbagi atas : 1. Vacuum Tubes Komputer generasi pertama ENIAC tahun 1946 menggunakan komponen tabung hampa udara untuk main memory. Memori ini relatif berukuran besar dan tiap-tiap tabung hampa udara mewakili 1 bit 2. Magnetic Core Storage Digunakan sekitar tahun 1960 – 1970. Terdiri dari ribuan cincin magnetik kecil berukuran 18 mm dengan lubang berdiameter 10 mm. Tiap-tiap core dihubungkan dengan kabel kawat membentuk suatu bidang core (core plane) dan ditumpuk membentuk suatu core stack. Masing-masing core dapat menyimpan 1 bit bila dimagnetasi dengan suatu arus listrik dari dua arah jurusan yang masing-masing bermuatan ½ arus.
Komputer IBM 704, pada General Electric Computer facility di Arizona State University, 1956. Sebuah mesin vacuum tube dengan magnetic core storage.
3. Planar Thin-Film Storage Terbuat dari lempengan tipis keramik atau metal tembus pandang yang berisi kumpulan besi nikel berbentuk empat persegi panjang kecil dihubungkan dengan kabel-kabel.
Single layer thin film dengan Ta2N resistors
4. Semiconductor Storage Mulai banyak digunakan sejak tahun 1970-an hingga sekarang.Terbuat dari VLSI (Very Large Scale Integration) yaitu meletakkan sejumlah besar circuit ke dalam suatu chip. Teknologi yang digunakan adalah MOS (Metal Oxide Semiconductor) dan bersifat volatile.
5
Semiconductor Storage berbentuk Single In-line Memory Module (SIMM)
5. Josephson Junction Diciptakan oleh Brian Josephson dari Inggris. Merupakan memori yang dapat melakukan switch dari bit 1 ke bit 0 atau sebaliknya dengan kecepatan yang tinggi, yaitu kurang dari sepertriliun detik. Menggunakan suatu tempat tertutup yang berisi helium cair dengan suhu sekitar -200 derajat celcius. In this close-up of a Josephson junction chip, the junctions themselves lie beneath the four circles in the brown regions. Ultrafast switches, they can be turned on in as little as six trillionths of a second and are made of lead or niobium - both semiconductors separated by a thin layer of insulating oxide. The narrowest lines in this photo are about 0.00001 inches wide. Actual size of the portion show here: 0.001 x 0.00112 inches
6. Charged-Coupled Device (CCD) Merupakan memori yang terdiri dari ribuan metal bujur sangkar berukuran kecil yang masing-masing dapat menyimpan informasi digit binari dalam bentuk beban elektronik (electric charge)
Delta-Doped Charged Coupled Devices (CCD) for Ultra-Violet and Visible Detection
HUBUNGAN ANTARA CPU DENGAN MAIN MEMORY DAN ALATALAT INPUT/OUTPUT 1. BUS Disebut juga pathway, merupakan suatu sirkuit transportasi informasi antara dua atau lebih alat-alat Bus yang menghubungkan antara CPU dengan main internal bus, sedangkan yang menghubungkan input/output disebut external bus.
yang merupakan jalur dalam sistem komputer. memory disebut dengan CPU dengan alat-alat
Jenis-jenis bus : • Data bus, yaitu bus yang digunakan untuk jalur transportasi data dan instruksi
6 • •
Address bus, yaitu bus yang digunakan untuk jalur transportasi untuk alamat di main memory untuk data atau instruksi yang akan diambil atau direkam Control bus, yaitu bus yang digunakan untuk mengirimkan signal sebagai pemberitahuan akan dikirimkan suatu informasi atau telah diterimanya informasi yang dikirimkan dari satu alat ke alat yang lain
Address Bus
ALAT Input/Output
MAIN Memory
CPU
Control Bus
Data Bus
Didalam internal bus, hubungan antara CPU dengan main memory melalui data bus yang dihubungkan dengan memory data register (MDR), address bus yang dihubungkan dengan memory address register (MAR) dan control bus yang dihubungkan dengan control unit.
CPU
ALU
IR Accumulator
PC Control Unit
MAR
Control Bus
Address Bus
MDR
Data Bus
MAIN MEMORY
2. I/O PORT Alat-alat input/output tidak dilekatkan langsung dengan bus tetapi melalui suatu I/O port atau I/O interface. Alat-alat input/output dapat berkomunikasi dengan CPU dengan cara mengirimkan informasi yang akan dikomunikasikan lewat bus.
7
Informasi yang dikirim dari alat input/output (peripheral device) ke main memory atau ke register di CPU diletakan di I/O port dan dikirimkan lewat data bus. Demikian juga bila informasi dari main memory akan dikirimkan ke peripheral device juga melalui data bus dan diterima di I/O port. Cara ini disebut juga dengan program-controlled I/O. Cara ini banyak diterapkan pada alat I/O yang hanya dapat menangani satu karakter atau 1 byte atau 1 word saja tiap saat misalnya keyboard. 3. DMA CONTROLLER Untuk peripheral device yang mempunyai kecepatan tinggi, tidaklah ekonomis untuk pengiriman informasi byte per byte atau word per word, dan akan lebih ekonomis bila pengiriman informasi dilakukan sekaligus per blok informasi. Bila informasi dikirim sekaligus per blok dan CPU harus selalu mengawasi pengiriman informasi, maka akan terjadi suatu waktu yang terbuang (idle time). DMA (Direct Memory Access) merupakan suatu konsep yang akan membuat komunikasi informasi antara peripheral device dengan main memory akan lebih efisien. DMA controller mempunyai suatu processor sendiri di dalamnya berupa IC khusus yang akan menangani operasi baca dan tulis antara main memory dan peripheral device. Dengan cara DMA ini, CPU cukup sekali saja memberi signal ke DMA controller untuk melakukan pengiriman sejumlah blok data antara main memory dengan peripheral device, yang selanjutnya urusan pengiriman data tersebut akan dilakukan oleh processor di DMA tanpa turut campur dari CPU, sehingga dapat melakukan pekerjaan yang lain. Cara DMA ini biasanya digunakan untuk peripheral device yang mempunyai kecepatan tinggi yang membutuhkan pengiriman blok data yang besar, misalnya hard disk drive.
DMA-Interface (Interface of Gigalink Bus to ULTRA-SPARC DMA controller)
4. I/O CHANNEL I/O Channel adalah suatu DMA controller yang digunakan bersama-sama untuk sejumlah alat-alat I/O. Masing-masing alat I/O dihubungkan dengan suatu channel lewat suatu controller. Sebuah controller dapat digunakan untuk sejumlah alat-alat I/O sejenis, misalnya akan digunakan dua atau lebih disk drive pada sebuah komputer.
8
PEMROSESAN INSTRUKSI
Jika programmer menginginkan CPU untuk mengerjakan sesuatu, maka harus ditulis suatu instruksi yang dikenal 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 main memory. Instruksi yang dapat diproses adalah dalam bentuk bahasa mesin yang terdiri dari : • Operation Code (op code), yang menunjukkan perintah yang akan dikerjakan oleh CPU • Operand, yang menunjukkan register atau alamat dari data di main memory Contoh : 0001 op code
0011
0010
operand
operand
Menunjukkan arti tambahkan (ADD = op code 0001) data yang ada di lokasi alamat 3 (operand alamat 0011) dengan data di lokasi alamat 2 (operand alamat 0010) dan hasilnya disimpan di lokasi alamat 3. Pemrosesan instruksi yang dilakukan oleh CPU mencakup beberapa tahap, yaitu : 1. Instruction Fetch Yaitu proses CPU mengambil atau membawa instruksi dari main memory ke CPU. 2. Instruction Execute Yaitu proses CPU untuk mengerjakan instruksi yang sudah dijemput dari main memory dan sudah berada di Instruction Register (IR register) 3. Cycle Time Yaitu seluruh waktu yang dibutuhkan untuk menyelesaikan tahap pertama dan tahap kedua. Tahap pertama dan tahap kedua secara keseluruhan disebut dengan siklus mesin (machine cycle). Beberapa pabrik komputer mengukur kecepatan dari CPU berdasarkan lamanya melakukan satu kali siklus mesin tersebut yang diukur dengan satuan megahertz (Mhz). Suatu pengukur waktu yang disebut dengan clock akan berdetak untuk tiaptiap siklus yang dilakukan. Misalnya suatu processor 8 Mhz berarti clock akan berdetak 8 juta kali tiap detiknya atau 8 juta siklus mesin dapat dilakukan tiap detiknya.