資源描述:
《計(jì)算機(jī)設(shè)計(jì)與實(shí)踐——MIPS基本指令.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、。MIPS基本指令和尋址方式:MIPS是典型的RISC處理器,采用32位定長(zhǎng)指令字,操作碼字段也是固定長(zhǎng)度,沒(méi)有專門的尋址方式字段,由指令格式確定各操作數(shù)的尋址方式。MIPS指令格式一般有三種格式:R-型指令格式I-型指令格式J-型指令格式R_Type指指指指312621161160OPrsrtrdshamtfunc6bit5bit5bit5bit5bit6bitOP:操作碼rs:第一個(gè)源操作數(shù)寄存器rt:第二個(gè)源操作數(shù)寄存器(單目原數(shù)據(jù))rd:結(jié)果寄存器shamt:移位指令的位移量func:指令的具體操作類型
2、特點(diǎn):R-型指令是RR型指令,其操作碼OP字段是特定的“000000”,具體操作類型由func字段給定。例如:func=“100000”時(shí),表示“加法”運(yùn)算。R[rd]←R[rs]+R[rt]I_Type指指指指31262116150OPrsrtimmediate6bit5bit5bit16bit特點(diǎn):I-型指令是立即數(shù)型指令雙目運(yùn)算:R[rt]R[rs](OP)SignExt(imm16)Load指令:-可編輯修改-。Addr←R[rs]+SignExt(imm16)計(jì)算數(shù)據(jù)地址(立即數(shù)要進(jìn)行符號(hào)擴(kuò)展)R[r
3、t]←M[Addr]從存儲(chǔ)器中取出數(shù)據(jù),裝入到寄存器中Store指令:Addr←R[rs]+SignExt(imm16)M[Addr]←R[rt]J_Type指令格式3126250OPtargetaddress6bit26bit特點(diǎn):J-型指令主要是無(wú)條件跳轉(zhuǎn)指令,將當(dāng)前PC的高4位拼上26位立即數(shù),后補(bǔ)兩個(gè)“0”,作為跳轉(zhuǎn)目標(biāo)地址。2targetaddressjL//gotoL指指指指指指指指指3targetaddressjalL//$ra指PC+4;gotoL指指指指指指指指指R型指令:定點(diǎn)運(yùn)算:add/a
4、ddu,sub/subu,sra,mult/multu,div/divu邏輯運(yùn)算:and/or/nor,sll/srl比較分支:beq/bne/slt/sltu跳轉(zhuǎn)指令:jrI型指令:定點(diǎn)運(yùn)算:addi/addiu邏輯運(yùn)算:andi/ori比較分支:slti/sltiu數(shù)據(jù)傳送:lw/sw/lhu/sh/lbu/sb/luiJ型指令:j/jal-可編輯修改-。設(shè)計(jì)模塊劃分,教學(xué)安排Main_ctrlInstructionFetchaddrAlu_ctrlUnitmodulemodulemoduledatadat
5、aExt_memorycore_registersmoduleALUunitaddrmoduleImm16unitmoduledata1、MIPS格式指令系統(tǒng)設(shè)計(jì)2、指令存儲(chǔ)器設(shè)計(jì)3、寄存器堆設(shè)計(jì)4、ALU設(shè)計(jì)——基本算術(shù)、邏輯單元的設(shè)計(jì)32位超前進(jìn)位加法器的設(shè)計(jì)32位桶式移位寄存器的設(shè)計(jì)5、取指令部件的設(shè)計(jì)6、立即數(shù)處理單元設(shè)計(jì)7、單周期處理器設(shè)計(jì)——R型指令的數(shù)據(jù)通路設(shè)計(jì)I型指令的數(shù)據(jù)通路設(shè)計(jì)Load/Store指令的數(shù)據(jù)通路設(shè)計(jì)分支指令/轉(zhuǎn)移指令的數(shù)據(jù)通路設(shè)計(jì)綜合12條指令的完整數(shù)據(jù)通路設(shè)計(jì)8、ALU控制
6、單元設(shè)計(jì)9、主控制單元的設(shè)計(jì)10、單周期處理器總體驗(yàn)證11、異常和中斷處理及其電路實(shí)現(xiàn)12、帶有異常和中斷處理功能的處理器的設(shè)計(jì)-可編輯修改-。-可編輯修改-。設(shè)計(jì)示例1:指令存儲(chǔ)器設(shè)計(jì)1、指令存儲(chǔ)器模塊定義:指令存儲(chǔ)器用于存放CPU運(yùn)算的程序指令和數(shù)據(jù)等,采用單端口存儲(chǔ)器設(shè)計(jì),設(shè)計(jì)最大為64個(gè)存儲(chǔ)單元,每個(gè)存儲(chǔ)單元數(shù)據(jù)寬度為32bit。下圖為指令存儲(chǔ)器的模塊框圖。moduleExtMemExtMem_CSExtMem_DoutExtMem_AdrExtMem_WRExtMem_DinExtMem_RDExtM
7、em_CLK圖1模塊框圖表1:存儲(chǔ)器接口信號(hào)說(shuō)明表序號(hào)接口信號(hào)名稱方向(I/O)說(shuō)明備注1ExtMem_CLKI存儲(chǔ)器工作時(shí)鐘,頻率為50Mhz2ExtMem_CSnI存儲(chǔ)器片選信號(hào),低有效3ExtMem_Adr[5:0]I存儲(chǔ)器地址線最大64個(gè)單元4ExtMem_WRnI存儲(chǔ)器寫(xiě)信號(hào),低有效5ExtMem_RDnI存儲(chǔ)器讀信號(hào),低有效6ExtMem_Din[31:0]I存儲(chǔ)器輸入數(shù)據(jù)線7ExtMem_Dout[31:0]O存儲(chǔ)器輸出數(shù)據(jù)線8Vcc電源9Gnd地線ExtMem_CLKExtMem_CSExtMe
8、m_WRExtMem_RDExtMem_AdrValidExtMem_DinValid圖2存儲(chǔ)器接口讀時(shí)序框圖-可編輯修改-。ExtMem_CLKExtMem_CSExtMem_WRExtMem_RDExtMem_AdrValidExtMem_DoutValid圖3存儲(chǔ)器接口寫(xiě)時(shí)序框圖ExtMem_CLKExtMem_CSExtMem_WRExtMem_RDExtMem_AdrVali