计算机组成原理胡祥坤 2675.docx
- 文档编号:18219307
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:19
- 大小:58.85KB
计算机组成原理胡祥坤 2675.docx
《计算机组成原理胡祥坤 2675.docx》由会员分享,可在线阅读,更多相关《计算机组成原理胡祥坤 2675.docx(19页珍藏版)》请在冰豆网上搜索。
计算机组成原理胡祥坤2675
计算机与信息学院
计算机组成原理
课
程
设
计
设计题目
复杂模型机设计
学生姓名
胡祥坤
学号
20092675
专业班级
计算机科学与技术09-2
指导老师
郭骏
2011/12/18
一、课程设计题目
复杂模型机的设计和调试
二、课程设计目的
本课程设计是《计算机组成原理》课程之后开设的实践环节课程。
通过本课程设计,使学生进一步加深对计算机原理系列课程相关内容的理解,掌握CPU设计的基本方法和计算机系统的组成原理,进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风、良好的工程素质及团队协作精神,为今后的工作打下基础。
本课程的日的是通过课程设计,使学生对学习过的计算机组成原理课程内容加以理解和巩固。
通过实验使学生掌握计算机山哪些部件所组成,各部件间又是如何进行协调工作的。
本次设计要求利用实验室的Dais-CMX16+十六位体系结构教学实验箱,组建一较为复杂的模型计算机。
并验证其能够正常运行。
参考实验指导书上复杂模型机设计的过程,运用其微指令格式,独立设计指令系统。
并用该指令系统中的指令编一完成简单运算的程序(有数据输入和输出的)。
并进行调试运行。
三、课程设计要求
(1)在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。
(2使用简单模型机和复杂模型机的部分机器指令,并编写相应的微程序,具体上机调试掌握整机概念。
(3)掌握微程序控制器的组成原理。
(4)掌握微程序的编写、写入,观察微程序的运行。
(5)通过课程设计,使学生将掌握的计算机组成基本理论应用于实践中,在实际操作中加深对计算机各部件的组成和工作原理的理解,掌握微程序计算机中指令和微指令的编码方法,深入理解机器指令在计算机中的运行过程。
四、基本概念和原理
1、数据格式
微型机规定采用定点补码表示法表示数据,切字长为八位时其格式如下:
7
6543210
符号
尾数
其中第七位为符号位,数值范围是:
一128 2、指令格式 模型机设计四大类指令共十六条,其中包括算术逻辑指令、UO指令、访问及转移指令和停机指令。 3、算术逻辑指令 设计9条算术逻辑指令井用单字节表示,寻址方式采用寄存器直接寻址,其格式如下: 7654 32 10 OP-CODE Rs Rd 五、实验设备 达爱思计算机组成原理教学实验系统一台,排线若干。 六、设计与调试任务 1.按给定的指令格式和指令系统功能要求,用所提供的器件设计一台微程序控制器控制的模型计算机。 2.根据设计图,在通用实验台上进行组装,并调试成功。 七、指令格式和指令系统 1)数据格式 模型机规定采用定点补码表示数据,且字长为8位,其格式如下: 7 6543210 符号 尾 数 其中第7位为符号位,数值表示范围是: -1≤X<1。 2)指令格式 模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。 ⑴算术逻辑指令 设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下: 7654 32 10 OP-CODE Rs Rd 其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定: Rs或Rd 选定的寄存器 00 01 10 11 R0 R1 R2 R3 9条算术逻辑指令的名称、功能和具体格式见表7-12-1。 ⑵访问指令及转移指令 模型机设计2条访问指令,即存数(STA)、取数(LDA),2条转移指令,即无条件转移(JMP)、结果为零或有进 位转移指令(BZC),指令格式为: 7 6 54 32 10 0 0 M 2OP-CODE Rd D(低八) D(高八) 其中“00M”为源码段,2OP-CODE为目的码段(LDA、STA指令使用)。 D为十六位地址段(低八在前,高八随后),M为源寻址模式,其定义如下: 寻址模式M 有效地址E 说明 00 01 10 11 E=D E=(D) E=(SP)+D E=(PC)+D 直接寻址 间接寻址 SP变址寻址 相对寻址 ⑶I/O指令 输入(IN)和输出(OUT)指令采用单字节指令,其格式如下: 7654 32 10 OP-CODE 00 Rd ⑷停机指令 指令格式如下: 7654 32 10 OP-CODE 00 00 HALT指令,用于实现停机操作。 八、指令系统 本模型机共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它指令1条。 下表列出了各条指令的格式、汇编符号、指令功能。 助记符 指令格式 功 能 LDAM,D,Rd 0 0 M 00 Rd E→Rd STAM,D,Rd 0 0 M 01 Rd Rd→E JMPM,D 0 0 M 10 00 E→PC BZCM,D 0 0 M 11 00 当CY=1或Z=1时,E→PC MOVRd,Rs 0 1 0 0 Rs Rd Rs→Rd ADCRd,Rs 0 1 0 1 Rs Rd Rs+Rd+CY→Rd SBCRd,Rs 0 1 1 0 Rs Rd Rs-Rd-CY→Rd ANDRd,Rs 0 1 1 1 Rs Rd Rs∧Rd→Rd CLRRd 1 0 0 0 00 Rd 0→Rd INCRd 1 0 0 1 00 Rd Rd+1→Rd CPLRd 1 0 1 0 00 Rd Rd→Rd RRCRd 1 0 1 1 00 Rd CY→Rd RLCRd 1 1 0 0 00 Rd CY→Rd INRd,I/O 1 1 0 1 00 Rd I/O→Rd OUTRd,I/O 1 1 1 0 00 Rd Rd→I/O HALT 1 1 1 1 00 00 停机 按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码,并将二进制代码表转换成十六进制格式文件。 M23 M22 M21 M20 M19 M18 M17 M16 M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0 E/M IP MWR R/M 目的编码 OP M CN S2 S1 S0 源编码 XP W ALU Iu IE IR Icz Ids 源编码 目的编码 M10 M9 M8 功能 M19 M18 M17 功能 X2 X1 X0 O2 O1 O0 1 1 1 禁止 1 1 1 禁止 1 1 0 ALU 1 1 0 MAR 1 0 1 SP 1 0 1 BX 1 0 0 IOR 1 0 0 AX 0 1 1 MRD 0 1 1 SP 0 1 0 XRD 0 1 0 IOW 0 0 1 RRD 0 0 1 XWR 0 0 0 PC 0 0 0 RWR 实验所用的机器指令程序: 地址 指令代码 助记符 功能 000 D0 INR0 iol→r0 001 D2 INR2 ioh→r2 002 58 ADCR0,R2 r0+r2→r0 003 41 MOVR1,R0 r0→r1 004 C0 RLCR0 rlcr0 005 0C0000 BZC000H bzc000h 008 F0 HALT 停机 (3)微程序流程图 本模型机的数据通路如图1所示。 根据机器指令系统要求,设计微程序流程图及确定微地址,如图2所示. 九、实验步骤 (1)按图3连接实验线路,仔细查线无误后,接通电源。 (2)编程 A.将控制台单元的编程开关SP06设置为WRITE(编程)状态。 B.将控制台单元上的SP03置为STEP,SP04置为RUN状态。 C.用开关单元的二进制模拟开关设置微地址UA5~UA0。 D.在微控制器单元的开关LM24~LM01上设置微代码,24位开关对应24 位显示灯,开关量为1时灯亮,开关量为0时灯灭。 E.按动START键,启动时序电路,即将微代码写入到28C16的相应地址 单元中。 F.重复C~E步骤,将表3的微代码写入28C16中。 (3)校验 A.将编程开关SP06设置为READ(校验)状态。 B.将实验板的SP03开关置为STEP状态,SP04开关置为RUN状态。 C.用二进制开关置好微地址μA5~μA0。 D.按动START键,启动时序电路,读出微代码.观察显示灯LM24~LM01 的状态(灯亮为“1”,灭为“0”),检查读出的微代码是否与写入的相 同。 如果不同,则将开关置于WRITE编程状态,重新执行 (2)即可 (4)写程序/运行程序 A.将控制台单元上的SP03置为STEP状态,SP04置为RUN状态,SP05置为NORM状态,SP06置为RUN状态。 B.拨动开关单元的总情开关CLR(1→0→1),微地址寄存器清0,程序计数器清0。 然后使开关单元的SWB、SWA开关设置为“01”,按动一次START,微地址显示灯显示“001001”,再按动一次START,微地址灯显示“001100”,此时数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。 若仔细阅读KWE的流程,就不难发现,机器指令的首地址总清后为00H,以后每个循环PC自动加1,所以,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。 C.写完程序后须进行校验。 拨动总清开关CLR(1→0→1)后,微地址清零。 PC程序计数器清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“001000”;再按START,微地址灯显示为“001010”;第3次按START,微地址灯显示为“111011”;再按START后,此时输出单元的数码管显示为该首地址中的内容。 不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。 每次在微地址灯显示为“001000”时,是将当前地址中的机器指令写入到输出设备中显示。 (5)运行程序。 A.单步运行程序 ①使编程开关SP06处于RUN状态,SP03为STEP状态,SP04为RUN 状态,SP05为NORM状态,开关单元的SWB,SWA为“11”。 ②拨动总清开关CLR(1→0→1),微地址清零,程序计数器清零,程序首 址为00H。 ③单步运行一条微指令,每按动一次START键,即单步运行一条微指令。 对照微程序流程图,观察微地址显示灯是否和流程一致。 ④当运行结束后,可检查运行结果是否和理论值一致。 B.连续运行程序 ①使编程开关SP06处于RUN状态,SP03为RUN状态,SP04为RUN 状态,SP05为NORM状态,开关单元的SWB,SWA为“11”。 ②拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续 运行程序,稍后将SP04拨至“STOP”时,系统停机。 ③停机后,可检查运行结果是否和理论值一致。 十、微程序代码 将一条机器指令编写成一段微程序。 每一个微程序包含若干条微指令,每一条微指令对应一条或多条微操作。 复杂模型机程序 LOAD"MXJ4.IS";预调入指令系统/微程序 org0 start: lda_dr0,0100h lda_ir1,0102h lda_xr2,0104h lda_rr3,0106h sta_d0100h,r0 sta_i0102h,r1 sta_x0104h,r2 sta_r0106h,r3 ;jmp_dstart inr0,iol inr2,iol movr3,r2 andr0,r2 adcr0,r2 sbcr3,r0 clrr3 incr1,r0 cplr3 rlcr2,r0 rrcr3,r0 outioh,r3 bnzc_dstart halt end 十一、课程设计总结 本次实验大体上分为三步。 首先,是连接电路。 其次,装载课程设计指导书上设计的程序并测试运行,通过观察运行情况和数据在总线上的流动,了解各功能部件的工作原理和工作机制以及流程图各指令的含义。 最后,自己设计程序并装载运行并检验运行结果。 对于自己要设计的程序首先根据题目要求写出它的汇编格式,再根据这个汇编格式写出机器指令并设计出微程序流程图。 最后根据所设计的微程序流程图写出其微指令代码。 这些工作完成后把所设计的机器指令和微程序代码改写成指定的格式装载到实验系统上运行,观察运行过程和设计目的是否一致。 如果不一致,要进行适当的修改直到一致为止。 经过多次修改,最终实现设计要求。 通过这次实验设计是我加深了对机器指令和微指令的理解和计算机计算流程的了解。 本次课程设计我们要设计一台微程序控制的模型机,了解了一个比较成熟的模型机的实现,完成对计算机组成原理这门课程的综合应用,达到学习本书的作用.作为一个计算机系学生这是必需掌握的。 使我们对数据选择器、移位器、加法器、运算器、存储器和微程序控制器,有了比较透彻的认识。 由于计算机设计的部件较多、结构原理较复杂,对于我们这样的初设计者来说感到无从下手。 在设计过程中,我们从开始的粗略的一个概念,到中间的疑惑与焦虑,到解决了问题的快乐。 这对于我们以后工作也有着很大的好处,培养了我们遇到问题,分析问题,解决问题各个方面上的能力。 设计结束了,从中我们也学到了不少知识.虽然计算机组成原理的课程设计与学习已经结束,可我们学习之路并没有结束,我们会继续努力学习其相关的知识,以适应社会的发展与需要.这样才能真正成为一名合格的大学生。 十二、附图及附表 1)复杂模型机的设计的数据通路图(图1) 2)微程序流程图(图2) 3)复杂模型机微指令表(图3) 微址00002)1)________________________________________________________________________________________________________________________ M23 M22 M21 M20 M19 M18 M17 M16 代码 M15 M14 M13 M12 M11 M10 M9 M8 代码 M7 M6 M5 M4 M3 M2 M1 M0 代码 后续微址 说明 E/M IP MWR R/M o2 o1 o0 OP M CN S2 S2 S0 X2 X1 X0 XP W ALU Iu IE IR Icz Ids 000 1 1 1 1 1 1 1 1 ff 1 1 1 1 1 1 1 1 ff 1 1 1 1 1 1 1 1 ff +1 空操作 001 1 0 1 1 1 1 1 1 bf 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 0 1 0 fa 可变 ibus→ir 400 0 1 1 1 0 0 0 1 71 1 1 1 1 1 0 1 1 fb 1 1 1 0 1 1 0 1 ed 001 ROm→rd 408 0 1 0 1 1 1 1 1 5f 1 1 1 1 1 0 0 1 fb 1 1 1 0 1 1 0 1 ed 001 rd→ROm 410 0 0 1 1 1 1 1 1 3f 1 1 0 0 0 1 1 0 c6 0 0 1 0 1 1 0 1 2d 001 bx→pc 418 1 1 1 1 1 1 1 1 ff 1 1 0 0 0 1 1 0 ff 1 1 1 1 0 1 0 0 f4 420+cz 条件变址 420 1 1 1 1 1 1 1 1 ff 1 1 1 1 1 1 1 1 ff 1 1 1 0 1 1 0 1 ed 001 空操作 421 0 0 1 1 1 1 1 1 3f 1 1 0 0 0 1 1 0 c6 0 0 1 0 1 1 0 1 2d 001 bx→pc 600 1 1 1 1 1 0 1 0 fa 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bl 601 1 0 1 1 1 0 1 1 bb 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bh 602 1 0 1 1 1 1 0 0 bc 1 1 0 0 0 1 1 0 c6 0 0 1 0 0 1 1 0 26 400+op bx→ar 620 1 1 1 1 1 0 1 0 fa 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bl 621 1 0 1 1 1 0 1 1 bb 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bh 622 1 1 1 1 1 1 0 0 fc 1 1 0 0 0 1 1 0 c6 1 1 1 1 1 1 1 1 ff +1 bx→ar 623 0 1 1 1 1 0 1 0 7a 1 1 1 1 1 0 1 1 fb 0 0 1 0 1 1 1 1 2f 602 ROm→bx 640 1 1 1 1 1 0 1 0 fa 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bl 641 1 0 1 1 1 0 1 1 bb 1 1 1 1 1 0 1 1 fb 1 1 1 1 1 1 1 1 ff +1 ROm→bh 642 1 1 1 1 1 0 0 0 f8 1 1 1 1 1 1 0 1 fd 0 0 1 0 1 1 1 1 2f 663 SP→ax 643 1 1 1 1 1 0 1 0 FA 0 1 1 0 0 1 1 0 66 0 0 1 0 1 1 1 1 2F 602 A+B→BX
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机组成原理胡祥坤 2675 计算机 组成 原理 胡祥坤