?小型流水線處理方式是一種時間重疊并行處理的處理技術(shù),具體地說,就是流水線可以在同一個時間啟動2個或以上的操作,借此來提高性能。為了實現(xiàn)這一點,小型流水線必須要時時保存暢通,讓任務(wù)充分流水,但在實際中,會出現(xiàn)2種情況使流水線停頓下來或不能啟動:
?
1、多個任務(wù)在同一時間周期內(nèi)爭用同一個流水段。例如,假如在指令流水線中,如果數(shù)據(jù)和指令是放在同一個儲存器中,并且訪問接口也只有一個,那么,兩條指令就會爭用儲存器;在一些算數(shù)流水線中,有些運算會同時訪問一個運算部件。
2、數(shù)據(jù)依賴。比如,A運算必須得到B運算的結(jié)果,但是,B運算還沒有開始,A運算動作就必須等待,直到B運算完成,兩次運算不能同時執(zhí)行。
解決方案:
第一種情況,增加運算部件的數(shù)量來使他們不必爭用同一個部件;
第二種情況,用指令調(diào)度的方法重新安排指令或運算的順序。