Selasa, 27 Agustus 2013

Pengaturan Register ( Terdapat dalam CPU )

Memory Buffer Register (MBR) 

Memory Buffer Register atau yang biasa disingkat dengan MBR adalah suatu register yang berfungsi untuk memuat isi informasi yang akan dituliskan ke memori atau baru saja dibaca dari memori pada alamat yang ditunjukkan oleh isi MAR (Memory Address Register) , atau untuk menampung data dari memori (yang alamatnya ditunjuk oleh MAR) yang akan dibaca. MBR dapat berukuran m bit, 2m bit, 4m bit, dst dimana   m = jumlah bit minimal dalam satu alamat (minimum addressable unit).MBR berperan dalam proses pengaksesan memori yaitu dalam proses read/write dari atau ke memori.
Berikut ini urutan proses read dari memori. 
-          Taruh alamat memori yang akan dibaca (dalam unsigned(range 0 hingga 2n binary) ke MAR 2 –1).
-          Kirim READ signal melalui READ control line.
-          Decode isi MAR sehingga diperoleh nilai x dan y (nilai MAR tidak berubah).
-          Taruh isi alamat yang ditunjuk ke dalam MBR.

Sedangkan, urutan proses write ke memori adalah sebagai berikut.
-        Taruh alamat memori yang akan ditulisi (dalam unsigned binary) ke MAR (range 0 hingga 2n – 1).
-          Taruh data yang akan ditulis ke MBR.
-          Kirim signal WRITE melalui WRITE control line.
-          Decode isi MAR sehingga diperoleh nilai x dan y (nilai MAR tidak berubah).
-          Copy-kan isi MBR ke memori (isi MBR tidak berubah).

Selanjutnya, urutan kejadian selama siklus instruksi tergantung pada rancangan CPU. Misalnya sebuah komputer yang menggunakan register memori alamat (MAR), register memori buffer (MBR), pencacah program (PC), dan register instruksi (IR); Proses aliran data pada siklus pengambilannya adalah sebagai berikut.
-        Pada saat siklus pengambilan (fetch cycle), instruksi dibaca dari memori.
-        PC berisi alamat instruksi berikutnya yang akan diambil.
-        Alamat ini akan dipindahkan ke MAR dan ditaruh di bus alamat.
-       Unit kontrol meminta pembacaan memori dan hasilnya disimpan di bus data dan disalin ke MBR dan kemudian dipindahkan ke IR.
-          PC naik nilainya 1, sebagai persiapan untuk pengambilan selanjutnya.
-   Siklus selesai, unit kontrol memeriksa isi IR untuk  menentukan apakah IR berisi operand specifier   yang menggunakan pengalamatan tak langsung.

Kemudian proses aliran data pada siklus tak langsung adalah sebagai berikut.
-          N bit paling kanan pada MBR, yang berisi referensi alamat, dipindahkan ke MAR.
-      Unit kontrol meminta pembacaan memori, agar mendapatkan alamat operand yang diinginkan kedalam MBR.
-          Siklus pengambilan dan siklus tak langsung cukup sederhana dan dapat diramalkan.
-      Siklus instruksi (instruction cycle) mengambil banyak bentuk karena bentuk bergantung pada  bermacam-macam instruksi mesin yang terdapat di dalam IR.
-    Siklus meliputi pemindahan data di antara register-register, pembacaan atau penulisan dari  memori atau I/O, dan atau penggunaan ALU.


Lalu proses aliran data pada siklus interupsi adalah sebagai berikut.
-          Isi PC saat itu harus disimpan sehingga CPU dapat melanjutkan aktivitas normal setelah terjadinya interrupt.
-          Cara : Isi PC dipindahkan ke MBR untuk kemudian dituliskan ke dalam memori.
-          Lokasi memori khusus yang dicadangkan untuk keperluan ini dimuatkan ke MAR dari unit kontrol.
-          Lokasi ini berupa stack pointer.
-          PC dimuatkan dengan alamat rutin interrupt.
-          Akibatnya, siklus instruksi berikutnya akan mulai mengambil instruksi yang sesuai.


Sumber :
  
Memory Address Register (MAR)

Pengertian MAR

MAR (Memory Address Register) atau register penunjuk alamat memori merupakan register yang menampung alamat data atau instruksi pada main memory yang akan diakses, baik itu yang akan diambil (dibaca) maupun yang akan diletakkan (disimpan/ditulis). Register ini berisi alamat dari data dan dihubungkan pada bus alamat, sehingga dapat menspesifikasikan alamat di dalam memori untuk operasi baca atau simpan/tulis. Alamat dari main memory (tempat data berada), diletakan di MAR dan dikirimkan ke main memory melalui address bus. Selama komputer bekerja, alamat dalam pencacah program ditahan (latched) pada MAR. Setelah itu MAR akan mengirimkan alamat ke dalam RAM dan operasi membaca dilaksanakan.
MAR adalah register yang mencatat alamat memori yang akan diakses (baik yang akan ditulisi maupun yang akan dibaca). (Hariyanto, Bambang. 1997. Sistem Operasi Revisi Keempat)

Spesifikasi MAR

-          Memuat alamat dari lokasi memori yang akan diakses (baca/tulis)
-          Jumlah bit MAR menentukan jumlah maksimum dari memori fisik yang dapat dipasang   dalam suatu komputer.
-          Jika MAR terdiri dari n bit berarti alamat memori yang valid adalah 0 hingga 2n – 1

Fungsi MAR

MAR berfungsi sebagai komponen yang diperintahkan oleh IR dan Control Unit untuk mencari dan menampung alamat data serta instruksi dalam sebuah Main Memory.

Proses kerja MAR (antara CPU dan memory)

MAR merupakan salah satu register yang digunakan sebagai interface antara CPU dan main memory. MAR menampung alamat data atau instruksi yang dikirim dari main Memory ke CPU atau yang akan direkamkan ke Main Memory.
Berikut penjelasan tentang proses pengaksesan data di/ke main memory.
1.      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 tersebut diletakan di MAR untuk dikirim ke Main Memory melalui Address Bus.
2.      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 tersebut diletakan di MAR untuk dikirim ke Main Memory lewat Address Bus.

Proses Pengaksesan Data (Menyimpan/Mengambil) yang melibatkan MAR

1.      Processor à Memory (Processor menyimpan data/instruksi ke memory)
Alamat data atau memory akan disalin ke dalam MAR, kemudian alamat tersebut akan di cari di dalam memory. Setelah ditemukan, data atau instruksi akan dimasukkan ke dalam MDR. Alamat yang telah ditemukan tadi, sel memorinya akan diaktifkan. Lalu data atau instruksi yang ada di MDR dimasukkan ke dalam memory.
2.      Processor ß Memory (Processor mengambil data/inst dari memory)
Alamat data atau memori akan disalin ke dalam MAR, Kemudian alamat tersebut akan dicari di dalam memory. Setelah ditemukan, maka sel memory yang berisi data atau instruksi akan aktif. Dengan aktifnya sel memory ini maka data atau instruksi yang ada didalamnya dapat di keluarkan untuk kemudian di tampung di dalam MDR. Melihat hal ini maka MAR digolongkan dalam register satu arah (karena hanya berhubungan dengan memory (alamat).

Peningkatan Kinerja MAR

Memperbesar kapasitas memory, berarti secara tidak langsung akan berpengaruh pada kinerja MAR. Ketika kapasitas memory bertambah besar, ada dua hal yang terjadi:
1.      Peningkatan jumlah bit alamat dari data atau instruksi di dalam MAR
2.      Pelebaran alamat dari instruksi
Dengan demikian, ketika memory di perbesar maka MAR akan lebih leluasa memanfaatkan kapasitas dari memory yang telah di upgrade tadi. Sehingga akan banyak alamat memory yang bisa dialamati dan banyak data atau instruksi yang bisa diakses.

Sumber:

Hariyanto, Bambang. 1997. Sistem Operasi Revisi Keempat. Bandung: Penerbit Informatika


Instruction Register (IR) 

Dalam komputasi, sebuah instruksi register (IR) adalah bagian dari unit kontrol CPU yang menyimpan instruksi yang sedang dieksekusi atau diterjemahkan. [1] Pada prosesor sederhana setiap instruksi yang akan dijalankan dimuat ke dalam register instruksi yang memegang sementara itu diterjemahkan, disiapkan dan akhirnya dieksekusi, yang dapat mengambil beberapa langkah.

Beberapa prosesor rumit menggunakan pipa register instruksi dimana setiap tahap pipa tidak bagian dari decoding, persiapan atau pelaksanaan dan kemudian lolos ke tahap berikutnya untuk langkah tersebut. Prosesor modern bahkan dapat melakukan beberapa langkah-langkah rusak sebagai decoding pada beberapa instruksi dilakukan secara paralel.

Decoding opcode dalam register instruksi meliputi penentuan instruksi, menentukan di mana Operand berada dalam memori, mengambil operan dari memori, mengalokasikan sumber daya prosesor untuk mengeksekusi perintah (dalam prosesor superscalar), dll Output dari IR tersedia untuk mengendalikan sirkuit yang menghasilkan sinyal waktu yang mengendalikan berbagai elemen pengolahan yang terlibat dalam mengeksekusi instruksi.



Instruction Buffer Register (IBR)

Memory Buffer Register (MBR) adalah register dalam prosesor komputer, atau central processing unit CPU, yang menyimpan data yang ditransfer ke dan dari toko akses langsung. Ini berfungsi sebagai buffer yang memungkinkan unit prosesor dan memori untuk bertindak independen tanpa dipengaruhi oleh perbedaan kecil dalam operasi.

Program counter

Program, atau PC (disebut juga pointer instruksi [1], atau instruksi mendaftarkan alamat [2], atau hanya bagian dari instruksi sequencer [3] di beberapa komputer) adalah daftar prosesor yang menunjukkan tempat komputer ini dalam urutan instruksiTergantung pada rincian tertentu komputer, PC memegang baik alamat instruksi yang sedang dijalankan, atau alamat instruksi berikutnya yang akan dijalankan.

Dalam kebanyakan prosesor, yang merupakan instruksi pointer incremented secara otomatis setelah mengambil sebuah program pengajaran, sehingga petunjuk biasanya diambil dari memori secara berurutan, dengan instruksi tertentu, seperti kantor cabang, melompat dan subroutine panggilan dan kembali, interrupting urutan dengan menempatkan nilai baru dalam program counter.

Melompat seperti petunjuk membolehkan alamat baru yang akan dipilih sebagai awal dari sebelah bagian dari aliran instruksi dari memori. Mereka membolehkan nilai baru yang akan diambil (tertulis) ke dalam program counter mendaftar. J subroutine panggilan yang dicapai cukup lama dengan membaca isi dari program counter, sebelum mereka ditimpa oleh nilai baru, dan disimpan di suatu tempat lain dalam memori atau mendaftar. J subroutine kembali kemudian menulis dicapai oleh nilai yang disimpan kembali ke dalam program counter lagi.
Sumber :


Accumulator

Accumulator merupakan tampat penampungan suatu nilai. Nilai yang masuk akan dijumlahkan dengan nilai yang ada di dalamnya, sehingga accumulator dapat dipakai untuk menentukan nilai total dari penjumlahan suatu bilangan.

Accumulator dapat dimisalkan sebagai kotak sumbangan. Dimana jumlah uang yang ada di dalam kotak tersebut erus bertambah sesuai dengan jumlah uang yang masuk. Dalam implementasi bentuk flowchart, accumulator digambarkan sebagai simbol proses.

Dalam central processing unit komputer (CPU), akumulator adalah register di mana aritmatika menengah dan hasil logika disimpan. Tanpa register seperti akumulator, akan diperlukan untuk menulis hasil masing-masing perhitungan (penjumlahan, perkalian, shift, dll) untuk memori utama, mungkin hanya untuk dibaca segera kembali lagi untuk digunakan dalam operasi berikutnya. Akses ke memori utama lebih lambat dibandingkan akses ke sebuah register seperti akumulator karena teknologi yang digunakan untuk memori utama yang besar lebih lambat (tapi lebih murah) daripada yang digunakan untuk register.Contoh kanonik untuk digunakan akumulator menjumlahkan daftar nomor. Akumulator ini awalnya diatur ke nol, maka setiap angka pada gilirannya membaca dan ditambahkan ke nilai dalam akumulator. Hanya ketika semua nomor telah ditambahkan adalah hasil diadakan di akumulator ditulis ke memori utama atau ke yang lain, non-akumulator, CPU mendaftar.Sebuah mesin akumulator, juga disebut mesin 1-operan, atau CPU dengan arsitektur akumulator berbasis, adalah jenis CPU mana, meskipun mungkin memiliki beberapa register, CPU sebagian besar menyimpan hasil perhitungan dalam satu daftar khusus, biasanya disebut "akumulator". Secara historis hampir semua komputer awal adalah mesin akumulator, dan banyak mikrokontroler masih populer pada 2010 (seperti 68HC12, yang PICmicro, 8051 dan beberapa orang lain) pada dasarnya mesin akumulator.CPU modern biasanya 2-operan atau 3-operan mesin-operan tambahan menentukan salah satu dari banyak register tujuan umum (juga disebut "akumulator tujuan umum" [1]) digunakan sebagai sumber dan tujuan untuk perhitungan. CPU ini tidak dianggap "mesin akumulator".Karakteristik yang membedakan satu mendaftar sebagai akumulator dari arsitektur komputer adalah bahwa akumulator (jika arsitektur adalah untuk memilikinya) akan digunakan sebagai operan implisit untuk instruksi aritmatika. Misalnya, CPU mungkin memiliki instruksi seperti:

ADD memaddressInstruksi ini akan menambahkan nilai membaca dari lokasi memori pada memaddress dengan nilai dari akumulator, menempatkan hasil dalam akumulator. Akumulator tidak diidentifikasi dalam instruksi oleh nomor register, itu tersirat dalam instruksi dan tidak ada daftar lain dapat ditentukan dalam instruksi. Beberapa arsitektur menggunakan register tertentu sebagai akumulator dalam beberapa petunjuk, tetapi instruksi lain menggunakan daftar nomor untuk spesifikasi operan eksplisit.

Multiple Quotient (MQ)

MQ adalah tempat penyimpanan sementara operand dan hasil operasi ALU (Arithmetic Logic Unit).

Tidak ada komentar:

Posting Komentar