Introduksi
Alat pemroses adalah alat yang berfungsi memproses instruksi-instruksi (program) untuk mengolah data menjadi informasi dan hasilnya ditampilkan melalui alat output.
Alat pemroses terdiri dari :
- Central Processing Unit (CPU)
- Main Memory
CPU
CPU merupakan tempat pemrosesan data berdasarkan instruksi-instruksi tertentu. Pada komputer mikro, processor ini disebut microprocessor.
Bagian utama CPU :
Control Unit
Arithmetic and Logic Unit (ALU)
Register
Gambar Processor
Control Unit
Berfungsi mengatur dan mengendalikan semua peralatan yang ada pada system computer, meliputi :
Mengatur dan mengendalikan alat-alat input dan output;
mengambil data dan instuksi dari main memory (RAM);
mengirim data dan intruksi ke ALU bila memerlukan opersi perhitungan aritmatika atau logika;
menyimpan hasil proses ke main memory (RAM).
ALU
Berfungsi melakukan operasi perhitungan aritmatika dan logika bedasarkan instruksi yang diberikan.
Register
Alat simpan berukuran kecil, memiliki kecepatan access tinggi (kecepatan melakukan pengambilan/perekaman data ke main memory). Register menyimpan data dan instruksi yang sedang diproses oleh CPU.
Jenis Register
Register yang berhubungan dengan instruksi
o Instruction Register (IR) disebut juga Program Register, berfungsi menyimpan instruksi yang sedang diproses. Instruksi yang diperlukan untuk melakukan pemrosesan diambil dari main memory dan disimpan di dalam IR.
o Program Counter (PC) disebut juga Instruction Counter, berfungsi menyimpan alamat intruksi (yang sedang diproeses) yang terdapat di dalam main memory. Isi dari PC berubah secara signifikan sesuai dengan urutan alamat instruksi yang sedang diproses.
Register yang berhubungan dengan data
o General Purpose Register, berfungsi menampung data yang sedang diproses (Operand Register) dan menampung hasil proses sebelum dikirim kembali ke main Memory (Accumulator)
Faktor yang berpengaruh terhadap kecepatan processor adalah ukuran dari operand register yang dinyatakan dengan istilah word size. Misalkan operand register berukuran 16 bit, maka processor tersebut disebut 16-bit processor dan komputernya disebut computer 16 bit.
Register yang digunakan sebagai interface antara CPU dengan main memory
o Memory Data Register (MDR), menampung data atau instruksi yang dikirim dari main Memory atau menampung hasil proses yang akan dikirim dari CPU ke Main Memory.
Intstruksi atau data dikirim dari Main Memory ke CPU lewat Data Bus dan ditampung terlebih dahulu di MDR, selanjutnya instruksi dikirim ke IR sedangkan data dikirim ke Operand Register.
o Memory Address Register (MAR), menampung alamat data atau instruksi yang dikirim dari main Memory ke CPU atau yang akan direkamkan ke Main Memory.
Bila data atau instruksi akan diambil dari Main Memory ke CPU, maka Main Memory harus diberitahu terlebih dahulu alamat (address) data atau instruksi tersebut di Main Memory. Oleh Control Unit alamat tersebutr diletakan di MAR untuk dikirim ke Main Memory lewat Address Bus.
Demikian juga jika hasil proses dari CPU akan direkamkan ke main memory, maka Main Memory harus diberitahu terlebih dahulu alamat perekaman hasil proses tersebut di Main Memory. Oleh Control Unit alamat tersebutr diletakan di MAR untuk dikirim ke Main Memory lewat Address Bus.
Cache Memory
Kecepatan access register lebih tinggi dibanding kecepatan access Main Memory. Agar kerja CPU lebih effisien, maka diantara CPU dan Main Memory dipasang Cache Memory atau disebut Buffer Memory untuk mengurangi waktu tunda (idle time) yang terjadi ketika berlangsungnya lintas data, instruksi dan hasil proses dari CPU ke Main Memory atau sebaliknya. Tanpa Cache Memory, CPU harus menunggu sampai data atau instruksi diterima dari Main Memory atau menunggu hasil proses selesai direkamkan di Main Memory baru proses selanjutnya bisa dilaksanakan. Cache Memory berfungsi mengingkatkan kecepatan melakukan proses.
Array Processor
Bila proses mengandung sejumlah operasi aritmatika, maka dapat dipasang array processor atau co-processor. Array Processor berfungsi mengingkatkan kecepatan melakukan proses perhitungan aritmatika.
Main Memory
CPU hanya dapat menyimpan data dan instruksi di register yang kapasitasnya kecil, sehingga tidak dapat menampung data dan instruksi seluruhnya yang dibutuhkan dalam proses, untuk mengatasi hal ini maka CPU didukung oleh simpanan yang kapasitasnya lebih besar, yaitu Main Memory atau Main Storage atau Primary Storage atau Internal Memory atau Internal Strorage atau Temporary Storage.
Main Memory terdiri dari :
- Random Access Memory (RAM)
- Read Only Memory (ROM)
RAM
Data dan instruksi yang dimasukan lewat alat input akan disimpan terlebih dahulu di main memory (RAM). RAM merupakan memory yang dapat diaccess (ditulis/dibaca) isinya. RAM bersifat volatile, artinya tidak dapat menyimpan secara permanen.
Secara konseptual RAM terbagi menjadi 4 (empat) partisi :
- Input strorage, digunakan untuk menampung input yang dimasukan lewat alat input.
- Program storage, digunakan untuk menyimpan semua instruksi yang akan diproses.
- Working storage, digunakan untuk menyimpan data yang akan diproses dan hasil proses.
- Output storage, digunakan untuk menampung hasil akhir dari pemrosesan data yang akan ditampilkan ke alat output.
ROM
ROM adalah memory yang hanya dapat dibaca saja, ROM berisi system operasi (operating system) terutama bootstrap program sudah diisi oleh pabrik pembuatnya. ROM bersifat non-volatile, artinya dapat menyimpan secara permanen.
Bootstrap Program
Bootstrap Program, adalah program yang merupakan bagian dari operating system yang diperlukan ketika pertama kali computer diaktifkan. Proses aktivasi computer pertama kali ini disebut dengan istilah booting dan dapat berupa cold booting atau warm booting.
Jenis ROM
o PROM (Programmable Read Only Memory) adalah ROM yang dapat deprogram sekali oleh programmer, selanjutnya tidak dapat diubah kembali.
o RPROM (Erasble Programmable Read Only Memory) adalah ROM yang dapat dihapus dengan sinar ultra violet (dijemr dengan sinar matahari) dan dapat deprogram kembali berulangkali.
o EEPROM (Electrically Erasable Programable Read Only Memory) adalah ROM yang dapat dihapus secara elektronik dan dapat deprogram kembali.
Hubungan antara CPU, Main Memory dan Alat I/O
Hubungan antara CPU, Main Memory serta alat-alat Input/Output dilakukan dengan suatu jalur yang disebut dengan bus. CPU dengan Main Memory dihubungkan melalui jalur bus yang dilekatkan dengan MAR, MDR dan Control Unit. Sedangkan bus yang menghubungkan CPU dengan alat-alat I/O tidak dilekatkan langsung dengan alat-alat I/Ot tersebut , tetapi melalui suatu I/O port atau DMA Controller atau I/O Channel.
Bus
Bus merupakan suatu circuit yang merupakan jalur transportasi informasi antara dua atau lebih alat-alat dalam system computer. Bus yang menghubungkan CPU dengan alat-alat I/O disebut External Bus.
Data Bus, adalah bus yang digunakan sebagai jalur transportasi data dan instruksi .
Address Bus, adalah bus yang digunakan sebagai jalur transportasi alamat data atau instruksi.
Control Bus, adalah bus yang digunakan untuk mengirimkan signal control sebagai pemberitahuan telah diterimanya atau direkamkannya suatu informasi dari dan di Main Memory.
I/O Port
Alat I/O tidak dilekatkan langsung dengan bus, tetapi melalui suatu I/O port atau I/O interface. Informasi yang dikirim dari alat I/O {peripheral device) ke main memory atau ke register di CPU diletakan di I/O port dan disalurkan lewat data bus. Demikian juga bila informasi dari main memory dikirim ke peripheral device lewat data bus akan diterima di I/O port. Cara pengiriman seperti ini disebut program control I/O, transfer data hanya dapat dilakukan 1 (satu) karakter per satuan waktu. I/O port digunakan untuk peripheral berkecepatan rendah, contohnya keyboard.
DMA Controller
Untuk peripheral berkecepatan tinggi, seperti hard disk drive pengiriman informasi tidak dilakukan per byte, tetapi per blok, karena itu digunakan cara Direct Memory Access (DMA), cara ini dilakukan dengan melekatkan bus pada DMA Controller yang dihubungkan dengan peripheral device.
DMA Controller memiliki processor di dalamnya yang menangani operasi baca dan tulis antara main memory dan peripheral device.
I/O Channel
I/O channel adalah suatu konsep yang menerapkan penggunaan sebuah DMA controller yang dapat dipergunakan bersama oleh beberapa peripheral device berkecepatan tinggi.
Masing-masing peripheral device dihubungkan dengan suatu channel lewat Controller (Control Unit yang berbeda dengan control unit pada CPU). Sebuah Controller untuk sejumlah alat-alat I/O sejenis, misalnya untuk dua atau lebih hard disk drive dapat dihubungkan dengan sebuah controller.
Pemrosesan Instruksi
CPU melaksanakan pemrosesan data berdasarkan kumpulan instruksi (program) yang diberikan. Data dan program diambil dari main memory. Instruksi-instruksi yang dapat diproses oleh CPU adalah instruksi-instruksi yang sudah dalam bentuk bahasa mesin, yang terdiri dari 2 (dua) bagian, yaitu operation code atau disebut dengan istilah op code dan operand.
Op code menunjukan perintah yang akan dikerjakan oleh CPU, sedang perand menunjukan data atau register atau alamat dari data di main memory.
0001 | 0011 | 0010 |
op code | Operand alamat | Operand alamat |
Contoh di atas menunjukan arti tambahkan (ADD= op code 0001 data yang ada di alamat 3 (operand alamat 0011) dengan data yang ada di operand alamat 2 (operand alamat 0010) dan hasilnya simpan di lokasi alamat 3.
Instruction Fetch
Tahap pertama pemrosesan instruksi oleh CPU disebut instruction fetch atau disebut fetch phase atau fetch cycle atau instruction cycle, yaitu proses menjemput instruksi dari main memory ke CPU. Langkah-langkah penjemputan instruksi adalah sbb. :
- Alamat yang ada di Program Counter register diletakan di MAR, alamat tersebut dikirim ke main memory lewat address bus;
- Sementara itu conrol unit mengirim sinyal permintaan membaca instruksi lewat control bus untuk instruksi dialamat yang dikirimkan lewat address bus tersebut;
- CPU menunggu sinyal jawaban dari main memory yang dikirim balik lewat control bus, bahwa pengiriman instruksi telah dilakukan dan telah berada di MDR;
- Instruksi yang telah berada di MDR dipindahkan oleh CPU ke IR register;
- Alamat instruksi yang sebelumnya ada di PC register ditambah satu yang merupakan alamat dari instruksi berikutnya di main memory
Instruction Execute
Tahap kedua dari pemrosesan instruksi adalah instruction execute atau execution phase atau execution cycle adalah proses dari CPU untuk mengerjakan instruksi yang sudah dijemput dari main memory dan sudah berada di IR register.
Control unit di CPU mengartikan instruksi tersebut, melaksanakan operasi yang harus dilakukan, seperti penjemputan/penambilan data dari main memory, mengirim instruksi ke ALU untuk melakukan operasi aritmatika atau logika dan menyimpan hasil pengolahan kembali ke main memory.
Bila operasi yang dilakukan mewmbutuhkan data, maka data tersebut harus dijemput dari main memory dengan langkah-langkah sbb.:
a. Alamat dari main memory (tempat data berada), diletakan di MAR dan dikirimkan ke main memory lewat address bus;
b. Control unit mengirim sinyal permintaan membaca isi alamat memory tersebut ke main memory lewat control bus;
c. Control unit menunggu sinyal balik jawaban dari main memory , bahwa data yang diminta sudah dikirimkan ke MDR lewat dat bus;
d. Data yang sudah berada di MDR dikirim oleh control unit ke operand register.
Data yang sudah ada di operand register tersebut siap untuk diolah oleh ALU dan bila hasil pengolahan data akan direkamkan kembali ke main memory, maka dapat dilakukan langkah-langkah sbb. :
- Alamat dari main memory tempat data akan direkamkan yang ditunjukan oleh operand alamat diletakan di MAR dan dikirim ke main memory lewat address bus;
- Data hasil proses yang ada di accumulator dipindah ke MDR;
- Control unit mengirim sinyal permintaan tulis ke alamat memory tersebut ke main memory lewat control bus;
- Control unit menunggu sinyal balik jawaban dari main memory lewat control bus, bahwa perekaman data sudah dilakukan.
Cycle Time
Waktu yang dibutuhkan untuk menyelesaikan tahap pertama yaitu instruction fetch disebut waktu instruksi (instruction time), waktu yang dibutuhkan untuk menyelesaikan tahap kedua, yaitu instruction execute disebut waktu pengerjaan (execution time).
Operasi yang dilakukan untuk mengerjakan tahap instruction fetch dan instruction execute disebut siklus mesin (machine cycle). Waktu keseluruhan yang dibutuhkan untuk menyelesaikan instruction fetch dan instruction execute adalah waktu siklus (cycle time).
Tidak ada komentar:
Posting Komentar