Saat ini istilah memori digunakan untuk menggambarkan ruang penyimpanan data yang datang ke dalam chip komputer, dan kata penyimpanan itu sendiri digunakan untuk menggambarkan memori yang ada di dalam disk.
Selain itu, terkadang istilah memori biasanya digunakan pula sebagai perangkat memori external atau perangkat memori yang bisa dibawa kemana-mana. Beberapa komputer saat ini juga menggunakan memori virtual, yang memiliki daya yang besar pada sebuah hardisk.
Setiap komputer saat ini telah dilengkapi dengan memori, dan biasanya memori tersebut dinamakan memori utama atau disebut dengan RAM. Di dalam sebuah komputer memori utama ditempatkan dalam bentuk deretan kotak metal.
Setiap Komputer dapat menampung informasi dalam bentuk byte. Komputer yang telah memiliki 1 megabyte memori dapat menampung lebih dari satu juga bytes informasi atau character.
Ada beberapa tipe memori , dan dibawah ini adalah type dan penjelasannya
- RAM (random Access memory): Memori ini adalah memori utama. Istilah dari RAM ini digunakan untuk memori yang berfungsi untuk membaca dan menuliskan data. Dengan fungsi tersebut maka Anda bisa menjalankan dua aktifitas sekaligus, yaitu menulis dari RAM dan membaca data dari RAM.
Hal ini sangat berbeda dengan ROM, yang hanya mengijinkan Anda untuk dapat membaca data. Kebanyakan data memiliki tingkat ke stabilan yang kurang dan hal tersebut menandakan bahwa tenaga listrik yang masuklah yang mengatur jalannya konten pada RAM. Dan apabila sewaktu-waktu tenaga listrik terputus, maka secara otomatis data pada RAM akan hilang.
- ROM (read-only memory): Hampir sejumlah besar computer memiliki ROM atau Read Only Memory yang memegang intruksi untuk menyalakan sebuah computer. Tidak seperti RAM, ROM tidak dapat digunakan untuk menulis Data.
- PROM (programmable read-only memory): A PROM adalah chip memori yang dapat menyimpan program. Tetapi sekali PROM digu0nakan, kita tidak akan dapat membersihkan dan menyimpan kembali data lainnya.
- EPROM (erasable programmable read-only memory): EPROM adalah jenis khusus dari memori PROM, dimana EPROM ini dapat dihapus dengan menggunakan cahaya ultraviolet.
- EEPROM (electrically erasable programmable read-only memory): EEPROM merupakan type khusus dari PROM, dimana EEPROM ini dapat dihapus dengan menggunakan adanya tegangan listrik.
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.
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. :
1. Alamat yang ada di Program Counter register diletakan di MAR, alamat tersebut dikirim ke main memory lewat address bus;
2. Sementara itu conrol unit mengirim sinyal permintaan membaca instruksi lewat control bus untuk instruksi dialamat yang dikirimkan lewat address bus tersebut;
3. CPU menunggu sinyal jawaban dari main memory yang dikirim balik lewat control bus, bahwa pengiriman instruksi telah dilakukan dan telah berada di MDR;
4. Instruksi yang telah berada di MDR dipindahkan oleh CPU ke IR register;
5. 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. :
1. Alamat dari main memory tempat data akan direkamkan yang ditunjukan oleh operand alamat diletakan di MAR dan dikirim ke main memory lewat address bus;
2. Data hasil proses yang ada di accumulator dipindah ke MDR;
3. Control unit mengirim sinyal permintaan tulis ke alamat memory tersebut ke main memory lewat control bus;
4. 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).
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.
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. :
1. Alamat yang ada di Program Counter register diletakan di MAR, alamat tersebut dikirim ke main memory lewat address bus;
2. Sementara itu conrol unit mengirim sinyal permintaan membaca instruksi lewat control bus untuk instruksi dialamat yang dikirimkan lewat address bus tersebut;
3. CPU menunggu sinyal jawaban dari main memory yang dikirim balik lewat control bus, bahwa pengiriman instruksi telah dilakukan dan telah berada di MDR;
4. Instruksi yang telah berada di MDR dipindahkan oleh CPU ke IR register;
5. 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. :
1. Alamat dari main memory tempat data akan direkamkan yang ditunjukan oleh operand alamat diletakan di MAR dan dikirim ke main memory lewat address bus;
2. Data hasil proses yang ada di accumulator dipindah ke MDR;
3. Control unit mengirim sinyal permintaan tulis ke alamat memory tersebut ke main memory lewat control bus;
4. 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).
