Wednesday, 12 December 2012

The Processor: Pipelining (part 1) - Amira Hurriff

Pipelining Analogy(in Laundry)

Terdapat 2 strategi iaitu :
- Satu tugas dalam satu masa (One-task-at-a-time)

'one task at a time ' mengambil masa yang lama,kerana ia menjalankan tugas dobi satu persatu mengikut urutan.

 - tugas bertindih ( Overlap Task)


'overlap task ' dapat menjimatkan masa. Melakukan 3 beban baju dalam masa yang sama(serentak) .

MIPS pipeline
ada 5 peringkat:

IF : instruction fetch from memory
ID : instruction decode & register read
EX : execute operation or calculate address
MEM : access memory operand
WB : result back to register




Pipeline performance

  1. single-cycle
  • ambil masa yang panjang
  • mengikut urutan
  • tahap kelajuan : single-cycle (Tc=800ps@rpm)
 2.   pipelined 
  • masa yang singkat untuk proses
  • proses boleh dilakukan serentak
  • tahap kelajuan : pipelined (Tc=200ps@rpm)

Pipeline speedup

kelajuan proses kerja pipeline processor lebih cepat berbanding non-pipeline processor.
Dan bagaimana mengira kelajuan pipeline?


S = (nk)/[k + (n – 1)], where S – speedup, n – number of instructions in program, k – number of stages instruction

Hazards


apa maksud hazards disini? bahaya? ..ye bahaya jika ada. situasi hazards ni, akan menghalang proses dari ke arahan yang seterusnya.
jenis-jenis Hazards:
  • structure hazards - sumber yang diperlukan sibuk
  • data hazard- kena menunggu arahan yang sebelum disiapkan dengan lengkap
  • control hazard- membuat keputusan ,berdasarkan arahan yang sebelumnya.


-structure hazard
-beberapa fungsi unit tidak menyalurkan maklumat sepenuhnya. membuatkan  proses tergendala.
-beberapa sumber tidak disalin dengan sepenuhnya.untuk membolehkan semua arahan dilaksanakan.maksud disini. sumber tidak lengkap.


-data hazards
arahan yang bergantung dari arahan sebelumnya.mengikut urutan.



No comments:

Post a Comment