【正文】
將結(jié)果 mov到寄存器里。 endcase end assign BM3_uAR0 = Flag_MUX ^ IR[5]。 default:Flag_MUX=139。 239。 239。 239。 //3,根據(jù)條件轉(zhuǎn)移指令操作碼 PSW的 ZF,OF,SF,CF 狀態(tài)標(biāo)志決定微地址 //第四天 always(SZOC, IR) begin case(IR[7:6]) // 條件轉(zhuǎn)移類指令 239。 12 第四天 為 CPU 擴(kuò)充轉(zhuǎn)移指令 一、設(shè)計(jì)要求 在初級 CPU 的基礎(chǔ)上進(jìn)行功能擴(kuò)充,使其支持轉(zhuǎn)移類指令 二、硬件 uAG 模塊設(shè)計(jì) ( 自己修改的設(shè)計(jì)部分, 加上適當(dāng)注釋) 339。else if(DRce_IB)q=data_IB。else if(DRce_DB)q=data_DB。完成程序運(yùn)行出了問題,經(jīng)過查找發(fā)現(xiàn)是 DR模塊出了問題, if(!n_reset)q=0。 三、驗(yàn)證 測試內(nèi)容: ADD 運(yùn)算 運(yùn)行數(shù)據(jù): 內(nèi)存地址 (H) 機(jī)器碼 (H) 匯編指令 0000 0002 0761 5678 0B61 F000 MOV 5678H, R1 ADD F000, R1 11 結(jié)果和第二天的一樣,說明硬件擴(kuò)充正確。 buffer (DATAWIDTH) DR_DB(.q(DB), .d(DR_out), .oe(DRoe_DB))。 buffer (DATAWIDTH) PC_buffer(.q(IB), .d(PC_out), .oe(PCoe))。 //IR //IR 寄存器的實(shí)例化 R (DATAWIDTH) IR(.q(IR_out),.d(IB),.clk(clock),.ce(IRce),.n_reset(n_reset))。 buffer (ADDRWIDTH) AR_AB(.q(AB), .d(AR_out), .oe(ARoe_AB))。 buffer (DATAWIDTH) reg_buffer(.q(IB), .d(TR_out), .oe(TRoe))。 else if(DRce_DB) q=data_DB。 always(posedge clk or negedge n_reset) begin if(!n_reset) q=0。 else if (ce) q = d。 endmodule IR 模塊設(shè)計(jì) module IR ( parameter DATAWIDTH=16) (input wire [DATAWIDTH1:0] d, input wire clk, input wire ce, input n_reset, output reg [DATAWIDTH1:0] q)。 else if(PCinc) data = data+1。 always (posedge clk or negedge n_reset) begin if (!n_reset) data = 0。 output [15:0] q。 input n_reset,clk,ce。 二、硬件設(shè)計(jì) PC 模塊設(shè)計(jì) (加上適當(dāng)注釋) module PC(d,q,n_reset,clk,ce,PCinc)。經(jīng)過對每條運(yùn)算的測試,一些結(jié)果不對,在自己的一步一步的查找中,通過和同學(xué)的微程序的對照,一一弄懂并改正了。 五、設(shè)計(jì)中遇到的問題及解決辦法 指令的入口地址開始時(shí)沒看懂,在同學(xué)的點(diǎn)撥下明白了。在 GRS可以看出由 0000 變成了 5678。 6 第二天 運(yùn)算指令的微程序設(shè)計(jì)與調(diào)試 一、 設(shè)計(jì)目標(biāo) 設(shè)計(jì)并調(diào)試運(yùn)算指令的微程序。由 GRS可以看出最終結(jié)果由 0000 變成了 5678。 江蘇大學(xué) 《計(jì)算機(jī)組成原理》課程設(shè)計(jì)報(bào)告 專業(yè)名稱: 軟件 工程 班級學(xué)號: 軟件 1001 2 第一天 取操作數(shù)微程序的設(shè)計(jì)和調(diào)試 一、 設(shè)計(jì)目標(biāo) 設(shè)計(jì)并調(diào)試取操作數(shù)的微程序 二、取操作數(shù)微流程 立 即直 接間 接相 對寄 存 器 尋 址寄 存 器 間 接 尋 址 變 址 尋 址 立 即 / 直 接 / 間 接 / 相 對 尋 址取 源 操 作 數(shù) 入 口0 0 40 0 85 : M → m A R1 , 0A R o e ′, R D , D R c e ′, P C i n c0 0 F0 1 06 : M ′→ m A R2 , 1G R S o e , T R c e0 0 80 0 60 : N A → m A RD R o e , T R c e0 1 60 0 60 : N A → m A R進(jìn) 入 取 目 標(biāo) 操 作 數(shù)P C o e , A R c e0 0 AP C o e , A R c e0 0 BA R o e ′, R D ,D R c e ′, P C i n c0 0 CD R o e , A R c e0 1 2D R o e , A c e0 1 0D R o e , A c e0 0 DA R o e ′, R D , D R c e ′0 1 5A R o e ′, R D , D R c e ′0 1 3P C o eA D D , S V0 1 1G R S o eA D D , S V0 0 ED R o e , A R c e0 1 4S o e , A R c e0 1 7G R S o e , A R c e0 0 9 3 直 接間 接相 對寄 存 器 尋 址寄 存 器 間 接 尋 址 變 址 尋 址 直 接 / 間 接 / 相 對 尋 址取 目 的 數(shù) 入 口0 0 60 1 85 : M → m A R1 , 0A R o e ′, R D , D R c e ′, P C i n c0 1 F0 2 06 : M ′→ m A R2 , 1G R S o e , A c e0 1 80 0 70 : N A → m A RD R o e , A c e0 2 60 0 70