1、 1 计算机组成原理课程设计计算机组成原理课程设计 班级班级 姓名姓名 20122012 年年 6 6 月月 2 一课程设计内容 利用计算机组成原理实验平台 COP2000,在自主设计的微程序控 制器上实现自定义功能的汇编语言程序设计。 二微程序控制器设计原理与设计步骤 (根据书写原理及设计步骤) 三模型机数据通路与微指令格式 1.1.模型机数据通路模型机数据通路 2.2.微指令格式定义微指令格式定义 表-1 微指令格式及定义 区号区号 对应位控制功能对应位控制功能 0 XRD 外设读 EMWR 程存写 EMRD 程存读 PCOE PC送AB EMEN EN与DB通 IREN 程存IR,uPC
2、 EINT 清中断 ELP PC 打入转 1 MAREN DB 打 MAR MAROE MAR 送 AB OUTEN DB 打端口 STEN DB打栈ST RRD 读寄组 RWR 写寄组 CN CN=1 进位 FEN 存标志位 2 X2 X1 X0 WEN DB 打 W AEN DB打 A S2 S1 S0 3 特别指出的是:特别指出的是: (1)EM: 程序存储器 EM; WR:写控制信号; RD:读控制信号; OE:送地址总线 ABUS 控制信号; EN:将 DBUS 打入信号,但对程序存储器有 WR 和 RD 配合控制打入方向。 (2)微程序执行的地址有微程序计数器 uPC 指示,每次取
3、指周期从程序存储器 EM 读出 的信息都将打入指令寄存器 IR 和微指令计数器 uIP, 表-2 S2S1S0功能表 表-3 X2X1X0功能表 四微程序指令流程 MOV R?,#II PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC EMBUSR? MOV A,#II S2S1S0 功能功能 0 0 0 A+W 加 0 0 1 AW 减 0 1 0 A 或 W 0 1 1 A 与 W 1 0 0 A+W+C 带进位加 1 0 1 AWC 带进位减 1 1 0 A 取反 1 1 1 A 直通 X2X1X0 输出寄存器输出寄存器 0 0 0 IN_OE 外部输入
4、门 0 0 1 LA_OE 中断向量 0 1 0 ST_OE 堆栈寄存器 0 1 1 PC_OE PC 寄存器 1 0 0 D_OE 直通门 1 0 1 R_OE 右移门 1 1 0 L_OE 左移门 1 1 1 没有输出 PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC EMBUSA 4 MOV A,R PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC R?BUSA ADD A,R? PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC R?BUSW (W)+(A)ALUD DBUSA SUB
5、A,R? PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC R?BUSW (W)-(A)ALUD DBUSA 5 AND A,R? PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC R?BUSW (W)&(A)ALUD DBUSA IN PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC INBUSA OUT PC BUSMAR M(MAR)EM EMBUS(IR,uPC) (PC+1)PC DBUSOUT 五微程序设计 6 区号 0 区域 1 区域 2 区域 微指令定义 微指令定义 微指令定义
6、 指令 节 拍 安 排 X R D E M W R E M W D P C O E E M E N I R E N E I N T E L P M A R E N M A R O E O U T E N S T E N R R D R W R C N F E N X 2 X 1 X 0 W E N A E N S 2 S 1 S 0 MOV R?, #II T 1 T 0 MOV A, #II T 0 T 1 MOV A, R? T 1 T 0 ADD A, R? T 2 T 1 T 0 SUB A, R? T2 T1 T0 AND A, R? T2 T1 T0 IN T1 T0 OUT JMP 7 六汇编语言程序设计 七调式结果分析 八课程设计收获