Cara kerja Central Processing Unit (CPU) Pada Control Unit

           
            Cara kerja Central Processing Unit (CPU) Pada Control Unit


Ketika sebuah komputer pertama kali diaktifkan power-nya, maka komputer tersebut menjalankan operasi bootstrap. Operasi ini akan membaca sebuah instruksi dari suatu lokasi memory yang telah diketahui sebelumnya dan mentransfer instruksi tersebut ke control unit untuk dieksekusi. Instruksi-intruksi dibaca dari memory dan dieksekusi sesuai dengan urutan penyimpanannya. Program counter dari suatu computer menyediakan suatu cara untuk menyimpan lokasi instruksi berikutnya. Urutan eksekusi berubah dengan memindah lokasi intruksi baru ke program counter sebelum pembacaan (fetch) instruksi dikerjakan. Sebuah intruksi merupakan kalimat imperatif pendek yang sudah dapat menjelaskan makna dari perintah tersebut.

Suatu intruksi terdiri dari : 





ü  subjek (komputer)
ü  verb (suatu kode operasi yang mengindikasikan pekerjaan apa yang akan dilaksanakan)
ü  objek (operands) yang mengidentifikasikan nilai data atau lokasi memory

Ketika intruksi-intruksi diterima oleh Control Unit, operation code akan mengaktifkan sequence logic untuk mengeksekusi intruksi-intruksi tersebut.








    suatu eksekusi program terdiri dari beberapa instruction cycle yang menjadi komponen penyusun dari program tersebut. Sedangkan untuk setiap instruction cycle terdiri dari beberapa sub cycle lagi seperti ftech cycle, indirect cycle, execute cucle, dan interrupt cycle. Setiap sub cycle ini disusun dari beberapa perintah dasar yang disebut micro operation.Untuk lebih jelasnya, seperti di bawah ini:

      Setiap control signal yang ada sebenarnya berfungsi sebagai switch untuk menghubungkan beberapa register (MAR, MBR, PC, IR) serta komponen lainnya seperti ALU dan setiap micro operation diwakilkan oleh satu control signal. Micro operation bekerja antar register untuk membentuk suatu sub cycle. Sebagai contoh sederhana dari control signal seperti bagan di bawah ini :




    Untuk ftech cycle, micro operation pertama adalah MAR ç (PC) yang diwakilkan oleh control signal C2. Selanjutnya MBR ç (memory) diwakilkan C5 dan seterusnya. Pada hardwire implementation control unit sebagai combinatorial circuit yang dibuat berdasarkan control signal yang akan dikeluarkan. Jadi untuk setiap control signal memiliki rangkaian logika tertentu pada control unit yang dapat menghasilkan control signal yang dimaksud. Secara umum untuk metode ini digunakan PLA (progammable logic array) untuk merepresentasikan control signal, seperti gambar di bawah ini :
 










































     Input untuk control unit yaitu IR, flags, clock, dan control bus signal. Flags dan control bus signal memiliki representasi secara langsung dan signifikan terhadap operasi bila dibandingkan dengan IR dan clock. Untuk IR sendiri, control unit akan menggunakan operation code yang terdapat pada IR. Setiap operation code menandakan setiap proses yang berbeda. Proses ini dapat disederhanakan dengan digunakannya decoder. Decoder memiliki n input dan 2n output yang akan merepresentasikan opcode. Jadi input dari IR akan diterjemakan oleh decoder sebelum menjadi input ke control unit.
  Clock digunakan untuk mengukur durasi dari micro operation. Untuk mengantisipasi propagasi sinyal yang dikirimkan melalui data paths dan rangkaian prosesor, maka periode dari setiap clock seharusnya cukup besar. Untuk mengatasinya digunakan counter yang dapat memberikan clock input bagi control signal yang berbeda, namun pada akhir instruction cycle, contol unit harus mengembalikan ke counter untuk menginisialisasikan periode awal.



      Setiap control signal direptresentasikan dengan fungsi Boolean lalu dibuatlah combinatorial circuit. Contohnya untuk C5 [MBR ç (memory)] digunakan di fetch cycle dan indirect cycle. Masing-masing sub cycle direpresentasikan dengan 2 bit, P dan Q. maka untuk C5 : C5 = ~P.~Q. T2 + ~P.Q.T2 >> T2 adalah clock yang digunakan.Setelah itu juga harus diperhatikan karena setiap operasi untuk execute cycle tidak sama. Tetapi untuk memudahkan dalam contoh ini execute cycle membaca LDA dari memory, sehingga secara lengkap : C5 = ~P.~Q.T2 + ~P.Q.T2 + P.~Q.(LDA).T2.







      
     Berbeda dengan sebelumnya, μ programmed implementation tidak menggunakan combinatorial circuir namun menggunakan μ instruction yang disimpan pada control memory. Proses untuk menghasilkan control signal dimulai dengan seqencing logic yang memberi perintah READ kepada contol memory. Kemudian dilanjutkan dengan pemindahan cari CAR (control address register) ke CBR (contol buffer register) isi alamat yang ditujukan oleh control memry. Setelah itu CBR mengeluarkan control signal yang dituju dan alamat selanjutnya ke sequencing logic. Terakhir, sequencing logic akan memberikan alamat baru ke CAR berdasarkan informasi dari CBR dan ALU.


      Referensi : 
        http://mbahasilmu.blogspot.co.id/2016/06/fungsi-control-unit-dalam-cpu.html














\




























  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Central Processing Unit (CPU) Pada Control Unit



         
         Central Processing Unit (CPU) Pada Control Unit




          Pengertian Central Processing Unit (CPU)


            
Unit Pengolah Pusat (UPP)
 (bahasa Inggris: CPU, singkatan dari Central Processing Unit), merujuk kepada perangkat keras komputer yang memahami dan melaksanakan perintah dan data dari perangkat lunak. Istilah lain, prosesor (pengolah data), sering digunakan untuk menyebut CPU. Adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970-an, mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi aspek penting dalam penerapan CPU. CPU sendiri terbuat dari lempengan yang  berbahan silicon yang terdiri  atas  10  juta  transitor  yang  biasa  disebut  “chip”.  Perkembangan  CPU  dari  waktu  ke waktu  semakin  meningkat.  Awal  munculnya  processor,  yakni  hadir  dengan microprocessornya  yang  di  buat  oleh  INTEL,  satu-satunya  produsen  pada  masa  itu  untuk pembuatan  processor. 

  

  Central Processing Unit (CPU) pada Control Unit


          a.     Pengertian Control Unit (CU)

Unit  kontrol  (bahasa  Inggris:  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 dari bagian lainnya dari perangkat CPU tersebut. 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).Control Unit atau Unit Kendali merupakan salah satuUnit yang terdapat pada CPU bertugas untuk mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer. Unit kendali akan mengatur  kapan alat input menerima   data  dan kapan data diolah serta kapan ditampilkan pada alat output. Unit ini juga mengartikan instruksi-instruksi dari program komputer, membawa data dari alat input ke memori utama, dan mengambil data dari memori utama untuk diolah. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU. Hasil dari pengolahan data dibawa oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan disajikan ke alat output.


             
         b.   Tugas dari  Control Unit (CU)

        a)      Mengatur dan mengendalikan alat-alat input dan output.
        b)      Mengambil instruksi-instruksi dari memori utama.
        c)      Mengambil data dari memori utama kalau diperlukan oleh proses.   
       d)     Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja.
        e)      Menyimpan hasil proses ke memori utama.
            
         c.      Macam Macam Control Unit

1)    Single-Cycle CU

       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-decodeopcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang . 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-decodeopcode 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 lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak efisien.

2)    Multi-Cycle Cua

      Unit kontrol yang multi-cycle lebih memiliki banyak fungsi. Dengan memperhatikan state dan opcode, fungsi boolean dari masing-masing outputcontrol 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. 
                
       d.    Input Output Control Unit
2.   
     1)    Input Control Unit
2.                    
  ü  Clock/pewaktu: pewaktu adalah cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro (atau sejumlah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu. Pulsa ini dikenal sebagai waktu siklus prosesor.
  ü  Register instruksi: opcode instruksi saat itu digunakan untuk menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi.
  ü  Flag: flag ini diperlukan oleh unit control untuk menentukan status prosesor dan hasil operasi ALU sebelumnya.  
  ü  Sinyal control untuk mengontrol bus. Bagian bus control bus system memberikan sinyal-sinyal ke unit control, seperti sinyal-sinyal interupsi dan acknowledgement.
         
      2)    Output Control Unit

     ü  Sinyal control didalam prosesor terdiri dari dua macam: sinyal-sinyal yang menyebabkan data dipindahkan dari register yang satu keregister yang lainnya, dan sinyal-sinyal yang dapat mengaktifasi fungsi fungsi ALU tertentu.
       ü   Sinyal control bagi bus control sinyal ini juga terdiri dari dua macam: sinyal control bagi memori dan
sinyal control bagi modu-modul I/O.













  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Program Pascal Procedure Menghitung Efisiensi Generator Dan Daya Input Generator



Program Pascal Procedure Menghitung Efisiensi Generator Dan Daya Input Generator



program menghitung_efisiensi_generator_dan_daya_input_generator;
uses crt;

procedure f_n(f_pin, f_pout: real; var result: real);
begin
result := (f_pout/f_pin) * 100;
end;

procedure f_pin(f_pout, f_prugi: real; var result: real);
begin
result := f_pout + f_prugi;
end
var

pil, pout, pin, n, prugi, rf_n, rf_pin: real;
begin
clrscr;
writeln(' program menghitung efisiensi generator dan daya input generator ');
writeln;
writeln('1. menghitung efisiensi generator');
writeln('2. menghitung daya input generator');
write('masukan pilihan : ');
 readln(pil);
  
if (pil = 1) then
begin
write('Pin (daya input) = ');
readln(pin);
write('Pout (daya output) = ');
readln(pout);

f_n(pin, pout, rf_n);
writeln;
writeln('efisiensi = ', rf_n:2:2, ' %');
end
else if (pil = 2) then
begin
write('Pout (daya output) = ');
readln(pout);
write('Prugi (daya rugi) = ');
readln(prugi);

f_pin(pout, prugi, rf_pin);
writeln;
writeln('Pin (daya input) = ', rf_pin:2:2, ' watt');
end
else
begin
writeln('salah input');
end;
readln;
end.












Output Program








Flowchart 









  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Program Pascal Function Menghitung Arus Primer dan Sekunder pada Tranformator



Program Pascal Function Menghitung Arus Primer dan Sekunder pada Tranformator



program menghitung_arus_primer_sekunder;
uses crt;

function f_ip(f_vp, f_vs, ff_is: real): real;
begin
f_ip := (ff_is*f_vs) / f_vp;
end;

function f_is(f_vp, f_vs, ff_ip: real): real;
begin
f_is := (ff_ip*f_vp) / f_vs;
end;

var
vp, vs, ip, is, pil: real;
begin
clrscr;
writeln('program menghitung arus primer dan sekunder tranformator ');
writeln;
write('Vp (tegangan primer) = ');
readln(vp);
write('Vs (tegangan sekunder) = ');
readln(vs);
writeln;
writeln('1. menghitung arus primer');
writeln('2. menghitung arus sekunder');
write('masukkan pilihan : ');
readln(pil);
writeln;

if (pil = 1) then
begin
write('Is (arus sekunder) = ');
readln(is);
ip := f_ip(vp, vs, is);
writeln('Ip (arus primer) = ', ip:2:2, ' ampere');
end
else if (pil = 2) then
begin
write('Ip (arus primer) = ');
readln(ip);
is := f_is(vp, vs, ip);
writeln('Is (arus sekunder) = ', is:2:2, ' ampere');
end
else
begin
writeln('salah input');
end;
readln;
end.




         

   



                              



     


Output Program     



       









Flowchart 
















  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS