MIPS下CPU和RAM的数据流动情况详解
?
這是計算機硬件間的數(shù)據(jù)路徑(即數(shù)據(jù)流動的路徑),下面將較詳細分析此圖:
PC(program counter, 程序計數(shù)器)是一個用于記錄當前計算機正在執(zhí)行的指令的地址的寄存器(register),當前指令執(zhí)行完后,PC的值加4(因為一條指令占4個字節(jié)),PC指向下一條指令。
?
?
PC根據(jù)指令地址找到對應(yīng)的指令后(Read address),指令( Instruction)流向Register File,R-format指令需要讀取兩個寄存器,I-format指令則需要讀取一個。
?
?
在執(zhí)行R-format指令時,Read data 1 與 Read data 2,即兩個寄存器的值, 作為ALU(Arithmetic and Logic Unit,算術(shù)邏輯單元)的inputs;在執(zhí)行I-format指令時,一個input來自經(jīng)過Sign-extend后的常量。
?
?
?
?在執(zhí)行Beq(branch if equal)或Bne(Branch if not equal)時,若需要branch,PC的值需要被替換為Branch target的地址,Branch target的地址經(jīng)過紅框內(nèi)的步驟后計算出
(branch target address = (PC+4)+ offset_value*4)。
?
在執(zhí)行l(wèi)w(load word)指令時,根據(jù)ALU計算出來的地址值訪問對應(yīng)的Data Memory 單元,獲取存在該單元里的數(shù)據(jù),存到Register File中;在執(zhí)行R-format時,直接將ALU的計算結(jié)果存到Register File中(Write data)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/liuyongdun/p/7040026.html
總結(jié)
以上是生活随笔為你收集整理的MIPS下CPU和RAM的数据流动情况详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EasyRMS录播管理服务器项目实战:w
- 下一篇: Windows/Linux安装pytho