mips4k處理器boot學習
hdguy 發表於 2006-5-11 16:09:00
mips暫存器約定:
暫存器編號/助記符/用法
0 zero 永遠返回值為0
1 at 用做彙編器的暫時變數
2-3 v0, v1 子函式呼叫返回結果
4-7 a0-a3 子函式呼叫的引數
8-15 t0-t7 暫時變數,子函式使用時不需要儲存與恢復
24-25 t8-t9
16-25 s0-s7 子函式暫存器變數。子函式必須儲存和恢復使用過的變數在函式返
回之前,從而呼叫函式知道這些暫存器的值沒有變化。
26,27 k0,k1 通常被中斷或異常處理程式使用作為儲存一些系統引數
28 gp 全域性指標。一些執行系統維護這個指標來更方便的訪問「static「和」extern"
變數。
29 sp 堆疊指標
30 s8/fp 第9個暫存器變數。子函式可以用來做楨指標
31 ra 子函式的返回地
在bootloader下,mips核的初始化用組合語言寫成,基本過程是
1〉清除cp0的watch暫存器
mtc0 zero, c0_watchlo /* first thing: clear watch regs */
mtc0 zero, c0_watchhi
2〉初始化cp0狀態暫存器,禁止軟硬體中斷以及選擇boot異常向量位址
3〉根據需要建立mips的狀態和控制暫存器,通常會清除(erl、exl位)
4〉初始化cache,先初始化icache,在初始化dcache(具體過程)
5〉開始初始化外圍介面(init_platform),主要是初始化時鐘系統、emif介面等。
MIPS4k處理器boot學習
mips暫存器約定 暫存器編號 助記符 用法 0 zero 永遠返回值為0 1 at 用做彙編器的暫時變數 2 3 v0,v1 子函式呼叫返回結果 4 7 a0 a3 子函式呼叫的引數 8 15 t0 t7 暫時變數,子函式使用時不需要儲存與恢復 24 25 t8 t9 16 25 s0 s7 子函...
MIPS處理器 CPU功能組成
cpu由運算器和控制器組成,完成對指令控制執行的功能。負責協調並控制計算機各部件執行程式的的指令序列,完成取出指令,分析指令,執行指令操作。對資料進行加工處理,完成資料運算,如算術運算,移位運算 cpu的功能部件 指令位址部件,指令寄存部件,解碼部件,執行部件,控制邏輯部件 指明當前要讀取的指令在儲...
MIPS處理器 你了解多少 2
新的 64 位 mips 處理器是rm9000x2,從 x2 這個標記判斷,它包含了不是乙個而是兩個均具有整合二級快取記憶體的64位處理器。rm9000x2 主要針對網路基礎設施市場,具有整合的 ddr 記憶體控制器和超高速的 hypertransport i o 鏈結。處理器 記憶體和 i o均通...