Lompat ke isi

Unit kendali: Perbedaan antara revisi

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Konten dihapus Konten ditambahkan
k →‎Referensi dan pranala luar: pembersihan kosmetika dasar
merapikan isi artikel dan menambahkan templat butuh rujukan
 
Baris 1: Baris 1:
{{Tanpa referensi|date=Februari 2023}}
{{istilah asing}}
'''Unit kendali''' ({{lang-en|'''Control Unit'''}} - CU) adalah salah satu bagian dari [[CPU]] yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap operasi yang dilakukan di bagian ALU ([[Arithmetic Logical Unit]]) di dalam CPU tersebut. ''Output'' dari CU ini akan mengatur aktivitas bagian lainnya dari perangkat CPU.


'''Unit kendali''' ({{lang-en|Control Unit}}) adalah salah satu bagian dari [[Unit Pemroses Sentral|unit pemroses sentral]] yang bertugas untuk memberikan kendali terhadap operasi yang dilakukan oleh [[unit aritmatika dan logika]]. Keluaran dari unit kendali akan mengatur aktivitas bagian lainnya dari unit pemroses sentral.
Pada awal-awal desain [[komputer]], CU diimplementasikan sebagai ''ad-hoc logic'' yang susah untuk didesain. Sekarang, CU diimplementasikan sebagai sebuah ''[[microprogram]]'' yang disimpan di dalam tempat penyimpanan kontrol (''[[control store]]''). Beberapa ''[[word]]'' dari ''[[microprogram]]'' dipilih oleh ''[[microsequencer]]'' dan [[bit]] yang datang dari ''word-word'' tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah [[register]], ALU, register instruksi, [[bus (komputer)|bus]]
dan peralatan input/output di luar [[chip]]. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya (''supervisor''). CU, juga berfungsi untuk bersinkronasi antar komponen.


Pada awal-awal desain [[komputer]], unit kendali diimplementasikan sebagai logika ad-hoc yang susah untuk didesain. Sekarang, unit kendali diimplementasikan sebagai sebuah program mikro yang disimpan di dalam tempat penyimpanan kontrol. Beberapa kata dari program mikro dipilih oleh pengurut mikro dan [[bit]] yang datang dari ''kata-kata'' tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah [[register]], [[unit aritmatika dan logika]], register instruksi, [[bus (komputer)|bus]] dan peralatan masukan/keluaran di luar [[sirkuit terpadu]]. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan unit kendali sebagai pemantaunya. Unit kendali juga berfungsi untuk bersinkronasi antar komponen.
== Tugas CU ==
Tugas dari CU adalah sebagai berikut:


== Tugas ==
# Mengatur dan mengendalikan alat-alat input dan output.
Tugas dari unit kendali adalah sebagai berikut:{{Butuh rujukan}}

# Mengatur dan mengendalikan alat-alat masukan dan keluaran.
# Mengambil instruksi-instruksi dari memori utama.
# Mengambil instruksi-instruksi dari memori utama.
# Mengambil data dari memori utama kalau diperlukan oleh proses.
# Mengambil data dari memori utama kalau diperlukan oleh proses.
# Mengirim instruksi ke ALU bila ada perhitungan aritmetika atau perbandingan logika serta mengawasi kerja.
# Mengirim instruksi ke unit aritmatika dan logika bila ada perhitungan aritmetika atau perbandingan logika serta mengawasi kerja.
# Menyimpan hasil proses ke memori utama.
# Menyimpan hasil proses ke memori utama.


== Macam-macam CU ==
== Macam-macam ==
=== Single-cycle CU ===
=== Unit kendali siklus tunggal ===
Proses di CUl ini hanya terjadi dalam satu ''[[clock cycle]]'', artinya setiap instruksi ada pada satu ''cycle'', maka dari itu tidak memerlukan ''state''. Dengan demikian fungsi boolean masing-masing ''control line'' hanya merupakan fungsi dari ''opcode'' saja. ''Clock cycle'' harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses men-''decode'' ''opcode'' untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (''branching''). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”. Desain ''single-cycle'' ini dapat bekerja dengan baik dan benar tetapi ''cycle'' ini tidak efisien.
Proses di unit kendali siklus tunggal hanya terjadi dalam satu siklus jam, artinya setiap instruksi ada pada satu siklus, maka dari itu tidak memerlukan rumus. Dengan demikian [[Aljabar Boolean|fungsi Boolean]] masing-masing garis kendali hanya merupakan fungsi dari kode operasi saja. Siklus jam harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses mendekode kode operasi untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (''branching''). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke unit aritmatika dan logika, yaitu “ALUSrc”. Desain unit kendali siklus tunggal dapat bekerja dengan baik dan benar tetapi tidak efisien.{{Butuh rujukan}}


=== Multi-cycle CU ===
=== Unit kendali multi-siklus ===
Berbeda dengan unit kontrol yang ''single-cycle'', unit kontrol yang ''multi-cycle'' lebih memiliki banyak fungsi. Dengan memperhatikan ''state'' dan ''opcode'', fungsi [[boolean]] dari masing-masing ''output'' ''control line'' dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah ''input logic''. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada ''cycle'' ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bit ''opcode'' memberitahukan operasi apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya.
Berbeda dengan unit kendali siklus tunggal, unit kontrol multi-siklus lebih memiliki banyak fungsi. Dengan memperhatikan rumus dan kode operasi, fungsi [[boolean]] dari masing-masing garis kendali keluaran dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah logika masukan. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada unit kendali multi-siklus, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bit kode operasi memberitahukan operasi apa yang selanjutnya akan dijalankan oleh unit pemrosesan sentral, bukan instruksi siklus selanjutnya.{{Butuh rujukan}}


== Referensi dan pranala luar ==
== Referensi ==
{{reflist}}
{{reflist}}



Revisi terkini sejak 14 Februari 2023 14.52

Unit kendali (bahasa Inggris: Control Unit) adalah salah satu bagian dari unit pemroses sentral yang bertugas untuk memberikan kendali terhadap operasi yang dilakukan oleh unit aritmatika dan logika. Keluaran dari unit kendali akan mengatur aktivitas bagian lainnya dari unit pemroses sentral.

Pada awal-awal desain komputer, unit kendali diimplementasikan sebagai logika ad-hoc yang susah untuk didesain. Sekarang, unit kendali diimplementasikan sebagai sebuah program mikro yang disimpan di dalam tempat penyimpanan kontrol. Beberapa kata dari program mikro dipilih oleh pengurut mikro dan bit yang datang dari kata-kata tersebut akan secara langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya adalah register, unit aritmatika dan logika, register instruksi, bus dan peralatan masukan/keluaran di luar sirkuit terpadu. Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya masing-masing, dengan unit kendali sebagai pemantaunya. Unit kendali juga berfungsi untuk bersinkronasi antar komponen.

Tugas dari unit kendali adalah sebagai berikut:[butuh rujukan]

  1. Mengatur dan mengendalikan alat-alat masukan dan keluaran.
  2. Mengambil instruksi-instruksi dari memori utama.
  3. Mengambil data dari memori utama kalau diperlukan oleh proses.
  4. Mengirim instruksi ke unit aritmatika dan logika bila ada perhitungan aritmetika atau perbandingan logika serta mengawasi kerja.
  5. Menyimpan hasil proses ke memori utama.

Macam-macam

[sunting | sunting sumber]

Unit kendali siklus tunggal

[sunting | sunting sumber]

Proses di unit kendali siklus tunggal hanya terjadi dalam satu siklus jam, artinya setiap instruksi ada pada satu siklus, maka dari itu tidak memerlukan rumus. Dengan demikian fungsi Boolean masing-masing garis kendali hanya merupakan fungsi dari kode operasi saja. Siklus jam harus mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada unit kontrol ini, yaitu proses mendekode kode operasi untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (branching). Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke unit aritmatika dan logika, yaitu “ALUSrc”. Desain unit kendali siklus tunggal dapat bekerja dengan baik dan benar tetapi tidak efisien.[butuh rujukan]

Unit kendali multi-siklus

[sunting | sunting sumber]

Berbeda dengan unit kendali siklus tunggal, unit kontrol multi-siklus lebih memiliki banyak fungsi. Dengan memperhatikan rumus dan kode operasi, fungsi boolean dari masing-masing garis kendali keluaran dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah logika masukan. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana. Pada unit kendali multi-siklus, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bit kode operasi memberitahukan operasi apa yang selanjutnya akan dijalankan oleh unit pemrosesan sentral, bukan instruksi siklus selanjutnya.[butuh rujukan]

Referensi

[sunting | sunting sumber]