處理器執行速度的影響因素
處理器每個週期的時間
超標量處理器專門針對優化ipc(instruction per cycle),超標量處理器每週期可以從i-cashe提取n條指令送入流水線,
理想流水線
對於複雜指令集如x86,因為指令長度不等,執行時間不等,很難直接實現流水線。
對於精簡指令集如arm,因為指令長度相等,並且每條指令任務量比較規整,所以容易使用流水線。
將流水線階段合併,可以產生**流水等,適用於對效能要不高的低功耗嵌入式領域。
將流水線階段繼續細分,可以獲得更高效能,但是也會增加硬體資源開銷和分支**失敗後果更嚴重。
指令相關性
先讀後寫:一條指令要將結果寫入到某個暫存器,但這個暫存器還在被其他指令讀取,不能夠馬上寫入。
先寫後寫:兩條指令都要將結果寫入同乙個暫存器,那麼後面指令必須等前面指令執行完才能執行寫操作。
對於超標量處理器waw、war、raw三種相關性都會阻礙指令亂序執行,需要在流水線中進行特殊處理。
超標量處理器執行指令兩種方式:順序執行、亂序執行
frontend指流水線中的取指、解碼
issue指發射,將指令送到對應的功能單元執行。
write back指將指令結果寫到目的暫存器。可通過內部暫存器重新命名實現亂序。
指令完成取指、解碼、暫存器重新命名後進入發射階段,此時指令儲存在快取發射佇列中,一旦指令運算元準備好了,就可以從發射佇列中離開,送到對應運算單元進行執行。
執行完後亂序寫入重排序快取,在重排序快取中實現執行結果的順序整理。
超標量處理器一般流水線深度比較深,除流水線各階段外還需要有**技術和恢復電路技術。
物理處理器與邏輯處理器
記錄解決方案,自己實際處理過,方案可用,在自己的部落格中記錄一下。cpu central processing unit 是 處理單元,本文介紹物理cpu,物理cpu核心,邏輯cpu,以及他們三者之間的關係。乙個物理cpu可以有1個或者多個物理核心,乙個物理核心可以作為1個或者2個邏輯cpu。物理c...
處理器核心
處理器核心 cache 寫緩衝器 主存 輔助儲存器 寫操作,對核心而言非迫切,所以加乙個寫緩衝器很好。cache可放在處理器核心與mmu之間 邏輯 cache,主流 也可放在mmu與主存之間 物理 cache 對儲存器中相同或相鄰資料和 的反覆使用,是cache改善效能的主要原因。cache同時使用...
處理器排程
1 cpu排程的相關概念 a.cpu排程 其任務是控制 協調程序對cpu的競爭 即按一定的排程演算法從就緒佇列中選擇乙個程序,把cpu的使用權交給被選中的程序 如果沒有就緒程序,系統會安排乙個系統空閒程序或idle程序 b.cpu要解決的三個問題 cpu排程的時機 就緒佇列的改變引發了重新排程 事件...