Implementasi Alur Data Sederhana

  

Struktur &

Fungsi CPU

  1 Implementasi Alur Data Sederhana

  2 Control Unit (CU)

  Pipelining Instruksi

  3 Daftar Isi Marketing data and our estimation Pengenalan ILP Implementasi Alur Data Sederhana

Ada tiga pokok dalam waktu pengolahan data dengan menggunakan komputer, yaitu input, proses, dan output. Perangkat input atau unit masukan ini adalah perangkat untuk memasukkan suatu kumpulan data dan perintah yang nantinya akan dimasukkan ke dalam memori computer, lalu diproses lebih lanjut oleh processor untuk menghasilkan informasi dan dikeluarkan oleh unit keluaran atau Output

  Control Unit berfungsi untuk mengatur jalannya program, mengontrol

Control Unit

  komputer sehingga dapat terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi-fungsi operasinya. Selain itu juga berfungsi untuk mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta mengawasi kerja dari ALU dan menyimpan hasil proses ke memori utama. Tanggung jawab unit kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan jenis instruksi tersebut.

Cara Kerja Control Unit

  Data diterima melalui Input Device dan dikirim ke Memory. Di dalam Memory data disimpan dan selanjutnya diproses di ALU.

  Hasil proses disimpan kembali ke Memory dan setelah itu baru di keluarkan pada media Output Device. Kendali dan koordinasi terhadap sistem ini dilakukan oleh Control Unit.

  Komponen Control Unit

Arithmetic & Logic Unit

  ALU bertugas untuk melakukan operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan. Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika yang terjadi sesuai dengan instruksi program. ALU melakukan semua operasi aritmatika dengan dasar penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.

Input Device

  Perangkat input atau unit masukan ini adalah perangkat untuk memasukkan suatu kumpulan data dan perintah yang nantinya akan dimasukkan ke dalam memori komputer yang nantinya akan diproses lebih lanjut oleh prosesor, guna untuk menghasilkan informasi yang diperlukan.

Output Device

  Perangkat output atau unit keluaran merupakan suatu data yang telah diproses menjadi bentuk yang dapat digunakan atau dapat dilihat oleh pengguna. Artinya komputer memproses atau mengolah data-data yang dimasukan menjadi sebuah informasi.

Storage Penyimpanan terbagi menjadi dua bagian, yaitu memori internal dan memori eksternal

  Memori internal atau berupa RAM (Random Access Memory) berfungsi untuk menyimpan program yang kita olah dengan semetara waktu, sedangkan memori eksternal atau ROM (Read Only Memory) yaitu untuk memori yang hanya bisa dibaca dan berguna sebagai penyedia informasi pada saat komputer pertama kali dinyalakan.

  Input Output Control Unit Berfungsi untuk menerima masukan (input) kemudian membacanya dan diteruskan ke memori/penyimpanan.

  Dalam hubungan ini dikenal istilah peralatan masukan (input device) yaitu alat penerima dan pembaca masukan serta media masukan yaitu perantaranya.

  Input Control Unit

  Berfungsi untuk menerima hasil pengolahan data dari CPU melalui memori. Seperti halnya pada unit masukan maka pada unit keluaran dikenal juga istilah peralatan keluaran (Output device) dan media keluaran (Output media).

  Output Control Unit

  Cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro atau Clock sejumlah operasi mikro yang bersamaan dibentuk bagi setiap waktu siklus prosesor.

  Opcode instruksi saat itu digunakan untuk menentukan operasi mikro mana yang akan Register Instruksi dilakukan selama siklus eksekusi.

  Komponen Diperlukan oleh unit control untuk menentukan

  Input CU status prosesor dan hasil operasi ALU

  Flag sebelumnya.

  Control bus system memberikan sinyal-sinyal ke Control Bus unit control, seperti sinyal-sinyal interupsi dan

  Signal acknowledgement

Control Bus Signal

  • Bila stasiun ingin mengirim data ke stasiun yang lain, maka pertama dilakukan penyelidikan (dinyatakan sebagai enq/ enquiry ) stasiun lain untuk melihat apakah siap menerima. Stasiun kedua merespon dengan suatu positive acknowledge (ack) untuk indikasi telah siap. Stasiun pertama kemudian mengirim beberapa data, sebagai suatu frame.
  • Setelah beberapa data dikirim, stasiun pertama berhenti untuk menunggu hasilnya. Stasiun kedua menetapkan penerimaan data (ack) yang sukses. Stasiun pertama kemudian mengirim suatu message akhir transmisi (eot) yang menghentikan pertukaran dan mengembalikan sistem seperti semula. Bila terjadi error pada transmisi, suatu negative acknowledgment (nak) dipakai untuk mengindikasikan bahwa suatu sistim tidak siap menerima, atau data yang diterima error.

  Data Link Protocol / Data Link Control adalah bab yang membahas tentang pengiriman signal melalui transmisi link dalam sebuah jaringan komputer, Data Link ini merupakan lapisan kedua dari bawah dalam model OSI (Open System Interconnection).

  Lapisan ini merupakan medium transmisi data antara perangkat- perangkat jaringan.

  

Operasi mikro merupakan operasi primitif tingkat rendah yang

bertindak secara langsung pada sirkuit logika suatu komputer Operasi Mikro mengatur fungsi-fungsi sebagai berikut :

  1. Membuka/menutup suatu gerbang ( gate ) dari sebuah register ke sebuah bus

  2. Mentransfer data sepanjang bus

  3. Memberi inisial sinyal-sinyal kendali seperti READ, WRITE, SHIFT, CLEAR dan SET

  4. Mengirimkan sinyal-sinyal waktu

  5. Menunggu sejumlah periode waktu tertentu

  Sinyal control Sinyal control bagi dalam CPU bus

  Komponen

  Terdiri dari dua macam, yaitu Control sinyal ini juga terdiri sinyal-sinyal yang menyebabkan dari dua macam, yaitu sinyal

Output CU

  data dipindahkan dari register control bagi memori dan yang satu ke register yg lainnya, sinyal control bagi modu- dan sinyal-sinyal yang dapat modul I/O. mengaktifasi fungsi-fungsi ALU tertentu Implementasi Control Unit

  Untuk menggenerasi signal kontrol dengan cara membaca dan mengeluarkan atau mengalirkan

  Control Unit

  mikroinstruksi. Terbagi 2 yaitu :

Microprogrammed

  • Control Vertikal  Jenis implementasi dimana signal kontrol di kode ke dalam pada bit , kemudian digunakan setelah dikode.
  • Control Horizontal  Control dimana setiap bit kontrol mengatur 1 operasi gate atau mesin.

  Untuk menggenerasi sinyal kontrol.

  1 Digunakan pada komputer berkinerja

  2 tinggi (super komputer

  Control Unit Komputer Mainframe sering menggunakannya

  3 untuk aritmetik, logika dan shift sederhana dan

  Konvensional instruksi akses memori

  /Hard-Wired CU Konvensional menghasilkan suatu rangkaian

  4 mirointruksi Perbedaannya dengan CU Microprogrammed

  5 terletak pada gerbang logikanya menggenerasi semua mikroorder sehingga eksekusinya lebih cepat Instruksi Pipeline

  

Suatu cara yang digunakan untuk melakukan sejumlah

kerja secara bersama tetapi dalam tahap yang berbeda

yang dialirkan secara kontinu pada unit pemrosesor.

Pipeline

  

Dengan cara ini, maka unit pemrosesan selalu bekerja. Jadi

instruksi yang akan dikerjakan oleh komputer dibagi

menjadi beberapa subsiklus instruksi yang lebih kecil.

  Tahapan Pipeline Diasumsikan tahapan pada pipeline pada prosesor adalah Fetch, Decode, dan Execute. Dengan tahapan seperti ini, maka akan ada waktu-waktu saat memori utama sedang tidak diakses atau prosesor dengan dalam kondisi idle. Ide pada pipeline ini adalah melakukan Fetch untuk instruksi kedua pada saat instruksi pertama sedang di-Decode. Kemudian, pada saat instruksi pertama di- Execute dan instruksi kedua di-Decode, instruksi ketiga dapat di-Fetch.

  Berikut adalah ilustrasi urutan operasi tanpa menggunakan pipeline.

Proses Perubahan Intruksi Pipeline

  Write Operand (WO) Fetch Instruction (FI) menyimpan hasilnya di dalam memori. membaca instruksi berikutnya ke dalam buffer

  06

  01 Execute Instruktions (EI)

  Decode Instruction (DI)

  05

  02

  melakukan operasi yang di indikasikan dan menentukan opcode dan operand specifier menyimpan hasilnya..

  04

  03 Fetch Operand (FO)

Calculate Operand (CO) mengambil semua operand dari memori

  menghitung alamat efektif seluruh operand Operand-operand yang berada di register sumber. Hal ini mungkin melibatkan tidak perlu di ambil. displacement, register indirect, atau bentuk kalkulasi alamat lainnya.

  

Permasalahan Di Dalam Instruksi

Pipeline

  Data Berbahaya ( Data Hazards)

  Variasi Waktu Ketika beberapa instruksi dieksekusi secara parsial,

  Tidak semua tahapan memakan waktu yang masalah akan timbul jika instruksi tersebut memiliki sama. Artinya, kecepatan instruksi pipelining

  1

  2

  referensi data yang sama. Kita harus memastikan ditentukan oleh tahap yang paling lambat. bahwa instruksi selanjutnya tidak berusaha mengakses data lebih cepat dari seharusnya.

  Percabangan (Branch)

  3

  4 Jeda (Interupsi)

  Masalah dalam percabangan adalah pipelining Interupsi harus berperan antar instruksi. Yaitu, diperlambat oleh instruksi karena kita tidak ketika satu instruksi telahselesai daninstruksi tahu cabang mana yang harus kita ikuti. berikutnya belum dimulai. Dengan pipelining, instruksiberikutnya biasanya dimulai sebelum instruksi yang sekarang telah selesai

  Variasi Pemilihan Waktu

  Metode sinkron = jika tahapan telah dianggap lengkap dari sejumlah siklus waktu tertentu. Metode asinkron = lebih efisien, karena bit atau garis sinyal harus dilewatkan maju ketahap berikutnya yang artinya data sudah valid. Ketika data telah diterima, sinyal juga harus melewati tahapan berikunya.

  1 Data Berbahaya (Data Hazards)

  Solusi Pipeline biasanya dilengkapi dengan small associative check memory

  2

  yang dapat menyimpan alamat dan jenis operasi. Ketika ada konflik, Permasalahan instruksi memasuki pipa dan alamat operand disimpan dalam memory

  Pipeline check. Ketika selesai, alamat ini akan dihapus

  3 Percabangan (Branching)

  • Menunda Percabangan • Menyusun kembali program sehingga percabangan menjadi lebih sedikit.
  • Memprediksi jenis cabang.
Kekurangan Kelebihan Pipeline

  Pipeline

  • Waktu siklus prosesor berkurang, sehingga
  • Non-pipelined prosesor hanya menjalankan satu

  meningkatkan tingkat instruksi-isu dalam instruksi pada satu waktu. Hal ini untuk mencegah kebanyakan kasus. penundaan cabang (yang berlaku, setiap cabang

  • Beberapa combinational sirkuit seperti tertunda) dan masalah dengan serial instruksi penambah atau pengganda dapat dibuat

  dieksekusi secara bersamaan. Akibatnya desain lebih lebih cepat dengan menambahkan lebih sederhana dan lebih murah untuk diproduksi. banyak sirkuit.

  • Instruksi latency (waktu yang dibutuhkan untuk
  • Pemrosesan dapat dilakukan lebih cepat, mengirim pesan dari ujung jaringan ke ujung yang dikarenakan beberapa proses dilakukan

  lain) di non-pipelined prosesor sedikit lebih rendah secara bersamaan dalam satu waktu. daripada dalam pipelined setara

  • Non-pipelined prosesor akan memiliki instruksi yang stabil bandwidth. Kinerja prosesor yang pipelined jauh lebih sulit untuk meramalkan dan dapat
Thank you for watching!