Unit Kontrol Dijelaskan: Komponen dan Desain dalam CPU
Unit kontrol adalah komponen utama dari unit pemrosesan pusat (CPU) dalam komputer yang dapat mengarahkan operasi selama eksekusi program oleh prosesor/komputer. Fungsi utama unit kontrol adalah mengambil dan mengeksekusi instruksi dari memori komputer. Ia menerima instruksi/informasi masukan dari pengguna dan mengubahnya menjadi sinyal kontrol, yang kemudian diberikan kepada CPU untuk eksekusi lebih lanjut. Ia dimasukkan sebagai bagian dari arsitektur Von Neumann yang dikembangkan oleh John Neumann. Ia bertanggung jawab untuk memberikan sinyal waktu dan sinyal kontrol serta mengarahkan eksekusi program oleh CPU. Ia dimasukkan sebagai bagian internal dari CPU dalam komputer modern. Artikel ini menjelaskan informasi lengkap tentang unit kontrol.
Apa Itu Unit Kontrol?
Komponen yang menerima sinyal/informasi/instruksi masukan dari pengguna dan mengubahnya menjadi sinyal kontrol untuk eksekusi dalam CPU. Ia mengontrol dan mengarahkan memori utama, unit aritmatika & logika (ALU), perangkat input dan output, dan juga bertanggung jawab atas instruksi yang dikirim ke CPU komputer. Ia mengambil instruksi dari memori utama prosesor dan mengirimkannya ke register instruksi prosesor, yang berisi isi register.
Diagram Blok Unit Kontrol
Unit kontrol mengubah masukan menjadi sinyal kontrol dan kemudian dikirim ke prosesor serta mengarahkan eksekusi program. Operasi yang harus dilakukan diarahkan oleh prosesor pada komputer. Utama Unit Pemrosesan Pusat (CPU) dan Unit Pemrosesan Grafis (GPU) memerlukan unit kontrol sebagai bagian internal. Diagram blok unit kontrol ditunjukkan di atas.
Komponen Unit Kontrol
Komponen unit ini adalah register instruksi, sinyal kontrol dalam CPU, sinyal kontrol ke/dari bus, bus kontrol, flag masukan, dan sinyal jam.
Komponen unit kontrol terpadu adalah register instruksi (berisi opcode dan bidang alamat), unit waktu, generator status kontrol, matriks pembangkitan sinyal kontrol, dan dekoder instruksi. Komponen unit kontrol terprogram mikro adalah generator alamat berikutnya, register alamat kontrol, memori kontrol, dan register data kontrol.
Fungsi
Fungsi unit kontrol meliputi hal-hal berikut.
Ia mengarahkan aliran urutan data antara prosesor dan perangkat lainnya.
Ia dapat menafsirkan instruksi dan mengontrol aliran data dalam prosesor.
Ia menghasilkan urutan sinyal kontrol dari instruksi yang diterima atau perintah dari register instruksi.
Ia memiliki tanggung jawab untuk mengontrol unit eksekusi seperti ALU, buffer data, dan register dalam CPU komputer.
Ia memiliki kemampuan untuk mengambil, mendekode, menangani eksekusi, dan menyimpan hasil.
Ia tidak dapat memproses dan menyimpan data
Untuk mentransfer data, ia berkomunikasi dengan perangkat input dan output dan mengontrol semua unit komputer.
Desain Unit Kontrol
Desain ini dapat dilakukan menggunakan dua jenis unit kontrol yang meliputi hal-hal berikut.
Berdasarkan kawat
Berdasarkan mikroprogram (single-level dan two-level)
Unit Kontrol Terpadu
Desain dasar unit kontrol terpadu ditunjukkan di atas. Dalam jenis ini, sinyal kontrol dihasilkan oleh sirkuit logika hardware khusus tanpa perubahan pada struktur sirkuit. Dalam ini, sinyal yang dihasilkan tidak dapat dimodifikasi untuk eksekusi dalam prosesor.
Data dasar dari opcode (kode operasi dari instruksi dikirim ke dekoder instruksi untuk dekode. Dekoder instruksi adalah himpunan dekoder untuk mendekode berbagai jenis data dalam opcode. Ini menghasilkan output sinyal yang berisi nilai sinyal aktif yang diberikan sebagai input ke generator matriks untuk menghasilkan sinyal kontrol untuk eksekusi program oleh prosesor komputer.
Unit Kontrol Berbasis Kawat
Generator matriks menyediakan status unit kontrol dan sinyal keluar dari prosesor (sinyal gangguan). Matriks dibangun sebagai array logika terprogram. Sinyal kontrol yang dihasilkan oleh generator matriks diberikan sebagai input ke generator matriks berikutnya dan digabungkan dengan sinyal waktu dari unit waktu yang berisi pola persegi.
Untuk pengambilan instruksi baru, unit kontrol beralih ke tahap awal untuk eksekusi instruksi baru. Unit kontrol tetap di tahap awal atau tahap pertama selama sinyal waktu, sinyal masukan, dan status instruksi komputer tidak berubah. Perubahan dalam status unit kontrol dapat ditimbulkan jika ada perubahan pada salah satu sinyal yang dihasilkan.
Saat terjadi sinyal eksternal atau gangguan, unit kontrol beralih ke status berikutnya dan memproses sinyal gangguan. Flag dan status digunakan untuk memilih status yang diinginkan untuk melakukan siklus eksekusi instruksi.
Di status terakhir, unit kontrol mengambil instruksi berikutnya dan mengirim output ke program counter, kemudian ke register alamat memori, ke register buffer, dan kemudian ke register instruksi untuk membaca instruksi. Akhirnya, jika instruksi terakhir (yang diambil oleh unit kontrol) adalah instruksi akhir, maka ia beralih ke status operasi prosesor dan menunggu sampai pengguna mengarahkan program berikutnya.
Unit Kontrol Terprogram Mikro
Dalam jenis ini, simpan kontrol digunakan untuk menyimpan sinyal kontrol yang dienkode selama eksekusi program. Sinyal kontrol tidak dihasilkan segera dan didekode karena mikroprogram menyimpan bidang alamat dalam simpan kontrol. Seluruh proses adalah satu level.
Operasi mikro dilakukan untuk eksekusi mikroinstruksi dalam program. Diagram blok unit kontrol terprogram mikro ditunjukkan di atas. Dari diagram, alamat mikroinstruksi diperoleh dari register alamat memori kontrol. Semua informasi unit kontrol disimpan secara permanen dalam memori kontrol yang disebut ROM.
Unit Kontrol Berbasis Mikroprogram
Mikroinstruksi dari memori kontrol dipegang oleh register kontrol. Karena mikroinstruksi dalam bentuk kata kontrol (berisi nilai kontrol biner) yang memerlukan 1 atau lebih operasi mikro yang harus dilakukan untuk pemrosesan data.
Selama eksekusi mikroinstruksi, generator alamat berikutnya menghitung alamat berikutnya mikroinstruksi dan kemudian mengirimkannya ke register alamat kontrol untuk membaca mikroinstruksi berikutnya. Urutan operasi mikro dari mikroprogram dilakukan oleh generator alamat berikutnya dan bertindak sebagai sequencer mikroprogram untuk mendapatkan alamat urutan, yaitu dibaca dari memori kontrol.
Kode Verilog untuk Unit Kontrol
Kode Verilog untuk Unit Kontrol ditunjukkan di bawah.
// inisiasi status initial begin state = 2’bxx; next_state = `PROC_FETCH; end
// penanganan sinyal reset always @ (posedge RST) begin state = `PROC_FETCH; next_state = `PROC_FETCH; end always @ (posedge CLK) begin state = next_state; end always @(state) begin if (state === `PROC_FETCH) begin next_state = `PROC_DECODE;
print_instruction(INST_REG); end
if (state === `PROC_DECODE) begin next_state = `PROC_EXE;
end
if (state === `PROC_EXE) begin next_state = `PROC_MEM;
print_instruction(SP_REF); end
if (state === `PROC_MEM) begin next_state = `PROC_WB;
end
if (state === `PROC_WB) begin next_state = `PROC_FETCH;
Tugas unit kontrol adalah mengarahkan aliran data atau instruksi untuk dieksekusi oleh prosesor komputer. Ia mengontrol, mengelola, dan mengkoordinasikan memori utama, ALU, register, unit input, dan output. Ia mengambil instruksi dan menghasilkan sinyal kontrol untuk eksekusi.
2). Apa itu memori kontrol?
Memori kontrol biasanya RAM atau ROM untuk menyimpan alamat dan data register kontrol.
3). Apa itu unit kontrol Wilkes?
Sirkuit sekuensial dan kombinatorial dari unit kontrol terpadu digantikan oleh unit kontrol Wilkes. Ia menggunakan unit penyimpanan untuk menyimpan urutan instruksi mikroprogram.
4). Apa itu unit kontrol terpadu?
Unit kontrol terpadu menghasilkan sinyal kontrol dengan berubah dari satu status ke status lain pada setiap pulsa jam tanpa perubahan fisik pada sirkuit. Pembangkitan sinyal kontrol tergantung pada register instruksi, dekoder, dan sinyal gangguan.
5). Apa itu memori kontrol?
Informasi unit kontrol atau data disimpan secara sementara atau permanen dalam memori kontrol. Memori kontrol ada dua jenis. Yaitu Random Access Memory (RAM) dan Read-Only Memory (ROM).
Jadi, ini adalah segalanya tentang definisi, komponen, desain, diagram, fungsi, dan jenis Unit Kontrol. Di sini adalah pertanyaan untuk Anda, “Apa tujuan register alamat kontrol?”