蜂鳥E200處理器筆記

2021-10-04 17:19:02 字數 1988 閱讀 5302

關於處理器的亂序問題,這裡是有關於tomasulo演算法的問題,以我目前的理解

保留站:資料的源運算元未準備好的時候,在保留站等待,當準備好就開始執行。

rob:rob保證了亂序執行的問題,實際的亂序執行,並不是指令亂序結束,是執行的時候,即ex段是亂序的,但最後的wb還是通過rob保證了順序。

三種資料衝突為waw,war,raw,關於資料衝突解決的方法依然是tomasulo演算法。

raw:

是真的資料相關,必須在前乙個資料計算後才能進行使用,此處使用「動態排程」的方法來解決

waw、war:

通過rob的存在控制wb部分,保證了waw和war的正確。

蜂鳥 e200 處理器核的流水線的按序主體是位於第一級的「取指」和位於第二級的「執行」和「寫回」,因此我們非嚴謹地定義蜂鳥 e200 處理器核的流水線深度為二級。

如何進行快速定址:

即使是片上的sram也需要幾個週期取指令,為了加快速度,通常使用itcm和i-cache的方法

itcm clnstruction tightly coupled memory)

如何處理非對齊指令

sram取指一次是32位,所以如果沒有對齊,需要取兩次然後拼接。

這個部分有篇部落格講的非常清楚:

或者摘取其中一段介紹bht:

例如,n = 2。這意味著過去的2次分支情況被儲存在乙個2位的移位暫存器中。因此可能有4種不能的分支歷史情況:00, 01, 10, 11。其中0表示未發生跳轉,1表示發生了分支跳轉。現在,設計乙個模式歷史表(pattern history table),有4個條目,對應於2n= 4種可能的分支歷史情況。4中歷史情況的每一種都在模式歷史表對應於乙個2位飽和計數器。分支歷史暫存器用於選擇哪個飽和計數器供現在使用。如果分支歷史暫存器是00,那麼選擇第乙個飽和計數器;如果分支歷史暫存器是11,那麼選擇第4個飽和計數器。

假定,例如條件跳轉每隔2次執行就發生一次,即分支情況的歷史序列是001001001…。在這種情況下,00對應的飽和計數器將是狀態「強選擇」(strongly taken),表明在兩個0之後必然是出現乙個1。01對應的飽和計數器將是狀態「強不選擇」(strongly not taken),表示在01之後必然是出現乙個0。這也同樣適用於10狀態。而11狀態從未使用,因為不可能出現連續兩個1。

2級自適應**器的一般規則是n位分支歷史暫存器,可以**在所有n週期以內出現的所有的重複序列的模式。

關於btb:是指使用容量有限的快取儲存最近執行過的分支指 pc 值,以及它們的跳轉目標位址

對於後續要取指的每條pc值,將其與 btb 中儲存的各個 pc 值進行比較,如果出現匹配,則**這是分支指令,並使用其對應儲存的跳轉目標位址作為**的跳轉位址

一共八條

指令描述

jal無條件直接跳轉。「jal x5, offset」,20位立即數作為offset,offset*2 + 當前pc,得到目標address。pc+4放入結果暫存器

jal無條件間接跳轉。「jal x1,x6,offset」,12位立即數作為offset,目標address = [x6] + offset*2

beq相等則跳轉 address = pc + offset*2

bne不相等跳轉

blt第乙個數小於第二個 (有符號)

bltu

第乙個數小於第二個 (無符號)

bge第乙個數大於等於第二個 (有符號)

bgeu

第乙個數大於等於第二個 (無符號)

jal用於子程式呼叫,然後jalr用於從子程式返回

8086 8088 處理器結構

8088共有8個通用暫存器,1個標誌暫存器 4個段暫存器和1個指令指標暫存器。一 通用暫存器 資料暫存器 共ax bx cx dx四個,每個暫存器即可作為16位暫存器,又可拆分為兩個8位暫存器,此時記為ah al bh bl等。ax ah al 累加器accumulator bx bh bl 基址暫...

4 處理器排程

4.1 cpu排程的相關概念 cpu排程 按照一定的排程演算法從就緒佇列中選擇乙個程序,把cpu的使用權交給被選中的程序,其任務就是控制 協調程序對cpu的競爭。如果沒有就緒程序,系統會安排乙個系統空閒程序或idle程序。cpu排程所面臨的場景 系統中有n個程序,等待上cpu執行,而有m個cpu,m...

蘋果A7處理器

2013年9月14日電,在蘋果公司新品發布會上,最為亮眼的當屬 iphone 5s搭載的採用64位架構的a7處理器了。菲爾 席勒在介紹iphone 5s時更是將其冠以 全球首款搭載64位處理器的手機 的名號,並強調指出a7處理器的效能是a6處理器的兩倍。菲爾 席勒表示 這是有史以來第乙個移動端64位...