职场文秘网

首页 > 演讲致辞 > 慰问贺电 / 正文

计算机组成原理课程设计报告

2020-12-29 17:53:47

 

  课 程 设 计 报 告

 课程名称

 计算机组成原理

 课题名称

 复杂模型计算机的设计

  专

 业

 网络工程

  班

 级

 班

  学

 号

 姓

 名

 指导教师

 2011年 X月X 日

 XX学院 课 程 设 计 任 务 书

  课程名称

  计算机组成原理

  课

 题

  复杂模型计算机的设计

 专业班级

 网络工程班

 学生姓名

 学

 号

  指导老师

 审

 批

  任务书下达日期

 2011年7月8 日 任务完成日期

 2011年9月2日

  一、设计内容与设计要求 1.设计内容 模型机是由五个部分组成的计算机,通过它可以理解计算机整机的结构及功能,理解CPU、存储器、中断控制器、总线的结构及实现逻辑和各部件之间的接口关系。本次课程设计的主要内容是利用西安唐都公司的TDN-CM++的内部可编程资源,设计一个模型计算机。本课程设计的主要目的是通过部件级的模型机的设计和调试,使学生理解计算机由5部分组成,掌握计算机的工作过程,从“指令—微指令—微操作”概念的理解,从而清晰地建立计算机的整机概念,并培养学生分析和解决实际问题的能力,同时增强学生的动手能力。

 2.设计要求:

 (1) 借助于TDN-CM++的内部可编程资源,运算器单元,控制存储器,微命令寄存器,地址转移逻辑,微地址寄存器,控制时序信号单元,寄存器组,总线,输入\输出单元等,用微程序的方式设计一台的模型计算机。设计包括模型计算机组成的设计,指令系统的设计,并用汇编语言完成设计并调试成功。

 (2) 复杂模型机的设计要求 (参考P107-115) 模型机设计四大类指令共十六条,其中包括算术逻辑指令、I/O 指令、访问及转移指令和停机指令。

 设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址。

 设计2条访内指令,即存数(STA)、取数(LDA),2 条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC)。

 设计2 条I/O 指令,输入(IN)和输出(OUT)指令采用单字节指令。

 设计停机指令1条用单字节表示。

 (3) 调试的程序 第一组 地址(H)

  内容(H) 助记符

  说明 $P00

  44

 IN

 01 R0

  INPUT device->R0 $P01

  46

 IN

 01

 R2

 INPUT device->R2 $P02

  98

 ADC

 R2

 R0

  R2+R0+CY->R0 $P03

  81

 MOV

 R0

 R1

  R0->R1 $P04

  F5

 RLC

 R1

 R1

 R1右移一位 $P05

  0C

 BZC

 00

 00

 00->PC $P06

  00

 第二组 地址(H)

  内容(H) 助记符

  说明 $P00

  45

 IN

 01 R1

  INPUT device->R1

 $P01

  00

 LDA 00 00 R0

 (20)-> R0 $P02

  20

  $P03

  86

 MOV

 R1

 R2

  R1->R2 $P04

  A8

 SBC

 R2

 R0

  R2-R0-CY->R0 $P05

  F5

 RLC

 R1

 R1

  R1右移一位

 $P06

  0C

 BZC

 00

 00

  00->PC $P07

  00 第三组 地址(H)

  内容(H) 助记符

  说明 $P00

  46

 IN

 01 R2

  INPUT device->R2

 $P01

  84

 MOV R2 R0

 R2-> R0 $P02

  44

 IN

 01 R0

  INPUT device->R0

 $P03

  98

 ADC

 R2

 R0

  R2+R0+CY->R0 $P04

  E2

 COM

  R2

  NOT R2 ->R0 $P05

  D6

 STA 00 0A R2

  R2 ->(0A) $P06

  0A $P07

  0C

 BZC

 00

 00

  00->PC $P08

  00

 在规定的时间内以小组为单位完成相关的系统功能实现、数据测试和记录并进行适当的分析。

 要求,同一小组的每个同学必须分析一条不同的机器指令的微程序的组成,说明组成该机器指令的每一条微指令的微命令(不同的控制信号的组成)。要求修改一条微指令。

 (4)按本任务书的要求,编写《课程设计报告》(Word文档格式)。并用A4的复印纸打印并装订。

  (5)在规定的时间内,请各班学习委员收齐课程设计报告在星期五交陈华光老师。

 3.分组及安排 分5组,学号除以5取余数,余数为0的同学做复杂模型机1、余数为1的同学做复杂模型机2,余数为2的同学做复杂模型机3,余数为3的同学做基于RISC的模型机,余数为4的做流水线模型机,每个组必须独立完成指定的题目,每个同学按要求独立完成课程设计报告。

 4.成绩评定 程序设计方案是否合理;程序设计是否正确;调试结果;设计说明书的质量高低;答辩时回答问题情况;课程设计周表现情况;总评成绩记入“课程设计成绩评分表”。

 二、进度安排 第 1周-2 周,具体安排如下:

 星期 时间 班级 内容 地点 第1周 一 上午8:00-12.00 计算机0981 接线 E-510 二 下午2.3:0-6.30 计算机0981 系统调试实现 E-510 三 上午8:00-12.00 计算机0981 调试 E-510 三 下午2.3:0-6.30 计算机0901/02 调试 E-510 四 下午2.3:0-6.30 计算机0901/02 接线 E-510 五 下午2.3:0-6.30 计算机0901/02 系统调试实现 E-510 一 下午2.3:0-6.30 网工0901/02 接线 E-510 二 上午8:00-12.00 网工0901/02 调试 E-510 四 下午2.3:0-6.30 网工0901/02 系统调试实现 E-510

 目录 一 课题的主要功能 1 二 总体设计方案 2 2.1 复杂模型机的逻辑框图 2 2.2用框图语言表示模型机的指令执行流程 3 三 数据格式和寻址方式的设计 3 3.1数据格式 3 3.2模型机的寻址方式 4 3.3 指令格式 5 四 指令和和微程序的设计 8 4.1指令系统 8 4.2微程序的设计 8 五 线路连接图 12 六 微程序流程及说明 13 七 课程设计的收获及体会 17 八 参考资料 19

  一 课题的主要功能 此次课题的目的是完整设计一台模型计算机,进一步建立整机的概念。借助于TDN-CM++的内部可编程资源,运算器单元,控制存储器,微命令寄存器,地址转移逻辑,微地址寄存器,控制时序信号单元,寄存器组,总线,输入\输出单元等,用微程序的方式设计一台的模型计算机。设计包括模型计算机组成的设计,指令系统的设计,并用汇编语言完成设计并调试成功因此我们先通过一个复杂模型机的设计实验来进行实际的计算机设计和实现,然后安排了用CPLD 来实现一个CPU 中的大部分功能的设计实验,接着讨论了输入输出系统的概念、分类、接口、寻址、基本控制方式等,根据后续微地址的形成方法,确定每条微程序地址及分支转移地址。根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码,写入到控制存储器中的相应单元中。在总调试前,先按功能模块进行组装和分调,因为只有各功能模块工作正常后,才能保证整机的运行正确。当所有功能模块都调试正常后,进入总调试。连接所有模块,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其他的运行方式等功能调试及执行指令的正确性验证。在验证正确后再自己修改几条微程序,再调试验证是否达到自己的目的。

  二 总体设计方案

 2. 1

 复杂模型机的逻辑框图

  以控制器为中心,首控制器从指令寄存器取得指令,编译指令,再输出微控制信号,控制ALU的运算,PC加一,并且从RAM中取出数据运算,运算后再把结果通过数据总线存到RAM,在指令寄存器读去下一条指令,依次循环。

 图1

  复杂模型计算机逻辑框图 2.2 用框图语言表示模型机的指令执行流程

 图2

  模型计算机逻辑框图

 三 数据格式和寻址方式的设计 3.1 数据格式 模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:

  7 6543210 符号 尾

  数 其中第 7 位为符号位,相对于十进制数值表示范围是:-2 7£X£2 7-1。

  3.2 模型机的寻址方式 操作数的寻址就是寻找形成操作数在主存中的地址的方法。

 设指令格式如下:

 操作码(OP)

 寻址特征

  形式地址

  形式地址(D):指令地址字段中给出的地址。

  有效地址(EA):形式地址经过一定计算而得到的操作数的实际地址。

  常用寻址方式如下:

  (1)隐含寻址:指令中不指出操作数的地址,而是隐含在累加器或堆栈等,由它们给出操作数。

  (2)立即寻址:指令的地址字段指出的不是操作数的地址,而是操作数本身。即数据 data = D。

  (3) 直接寻址:操作数的地址直接在指令中给出,即操作数的有效地址为

 EA = D。

  (4)间接寻址:指令的形成地址 D 在主存相应单元中的内容是操作数的地址,即操作数的有效地址为

 EA =(D)。

  (5)寄存器寻址:指令中给出的是寄存器号 R,操作数就是寄存器中的内容,即 data=(R)。

  (6) 寄存器间接寻址:指令中给出的是寄存器号 R,而操作数的地址就是寄存器中的内容, 即 EA =(R)。

  (7)相对寻址:操作数地址为程序计数器 PC 中的内容与指令中给出的地址偏移量 D 之 和,位移量 D 通常以补码形式给出,可正可负。

 即 EA=(PC)+D。

  (8) 基址寻址:操作数地址为基址寄存器中的内容与指令中给出的地址偏移量 D 之和,即 EA=(R)基址 +D (9)变址寻址:操作数地址为变址寄存器中的内容与指令中给出的地址偏移量 D 之和,

 3.3 指令格式 由于本模型机机器字长只有8位二进制长度,故使用单字长指令和双字长指令。根据要求,设计该模型机能执行的不同指令,例指令格式及功能如下:

 (1)

 算术逻辑运算指令

 9 条算术逻辑指令的名称、功能和具体格式见表 3.1-1

  表 3.1-1

  算术逻辑运算指令用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:

 7654 32 10 OP-CODE rs rd

 其中,OP-CODE 为操作码,rs 为源寄存器,rd 为目的寄存器,并规定:

 Rs 或 rd 选定的寄存器 00 01 10 R0 R1 R2

 (2)

 访问指令及转移指令

 模型机设计 2 条访内指令,即存数(STA)、取数(LDA),2 条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式为:

 7 6 5 4 3 2 1 0 00 M OP-CODE RD

  D

 其中,OP-CODE 为操作码,rd 为目的寄存器地址(LDA、STA 指令使用)。D 为位移量 (正负均可),M 为寻址模式,其定义如下:

  寻址模式 M 有效地址 E 说

 明

 00

 01

 10

 11

 E= D

 E=(D)

 E=(RI)+D

 E=(PC)+D

 直接寻址

 间接寻址

 RI 变址寻址

 相对寻址

  (3) I/O 指令 输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:

 其中,addr=01 时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10 时,选中“OUTPUT DEVICE”中的数码块作为输出设备。

 (4) 停机指令 指令格式如下:

  HALT 指令,用于实现停机操作。

  四 指令和和微程序的设计 4.1 指令系统 本模型机共有16 条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它指令1 条。表X列出了各条指令的格式、汇编符号、指令功能。

 按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表, 表X 即为将图X微程序流程图按微指令格式转化而成的“二进制微代码表”。并将二进制代码表转换为联机操作时的十六进制格式文件,见下表X。

 表 X 24 23 22 21 20 19 18 17 16 1514 13 12 11 10 9

 8

 7 6 5 4 3 2 1 S3 S2 S1 S0 M Cn WE A9 A8 A B C μA5 μA5 μA5 μA5 μA5 μA5

 4.2 微程序的设计 修改程序:把ADC机器指令的进行了修改,本来是执行:DR0+DR2→BUS→R0,把微程序改了,这条指令就执行:DR0或DR2→BUS→R0,其中把这条微程序$M2B959B41改成M2B159B41就执行上条指令。得到的结果如图所示:

 在微程序流程图中找到ADC执行的数序号为53(八进制数),转化为十六进制数为2B。在给定的微程序中找到含2B的程序,为$M2B959B41将9,5转化为2进制数为1001,0101.其中,1001代表执行的运算,0101中的前两位中的0代表M=0,1代表Cn=1,对照74LS181的逻辑功能表,找到ADC所代表的是F=A加B,在F=A加B所在列寻找合适的算法即可。我找到的F=A或 B。其S3到S0为0001。转化为十进制数为1.将$M2B959B41中的9改为1,保存微程序。

  修改后测试程序:

 地址(H)

  内容(H) 助记符

  说明 $P00

  44

 IN

 01 R0

 INPUT device->R0 $P01

  46

 IN

 01

 R2

  INPUT device->R2 $P02

  98

 ADC

 R2

 R0

 R2或R0 ->R0 $P03

  81

 MOV

 R0

 R1

 R0->R1 $P04

  E2

 COM

  R2

  NOT R2 ->R0 $P05

  D6

 STA 00 0A R2

  R2 ->(0A) $P06

  0A $P07

  0C

 BZC

 00

 00

  00->PC $P08

  00

 图1输入03至R0

 图2输入03至R0

  图3执行后得到正确结果送至R1 五 线路连接图

 六 微程序流程及说明 (1)第一条指令是通过取址把INaddress中的数03存入到R0,如图1所示

 图1 (2) 第二条指令是通过取址把INaddress中的数03存入到R2,如图2所示

 图2

 (3)第三条指令是把R2中的数03送入到DR1中(图3),把R1中的数03送入到DR2中(图4),再在算数逻辑运算器ALU中对DR1和DR2中的数进行求或运算后存入R0(图5)。

  图3

 图4

 图5 (4) 第四条指令MOV是把R0中的数送到R1,此时R1变成02,如(图6)所示

 图6 (5)第五条指令是移位运算,把R1中的数送到299-BUS中进行移位运算,在将移位后的结构存入R1(图7)

 图7

 七 课程设计的收获及体会 经过这次课程设计我了解了很多知识,也学到了一些课本中没有的知识点,实践给我们带来了很多快乐,但是在这快乐中我们有着艰辛,在我们接完线的时候,去运行机器总是出错,我们一步一步的检查,到最后一遍又一遍的重新连线,到最后终于成功了,心里有着一般人没有的喜悦。

 计算机设计与实践实验课程不仅仅是对理论的验证,重要的是技术训练和能力培养,包括动手能力、分析问题和解决问题的能力、书写能力和表达能力、团队协作能力等的培养也就是要注重学生的工程能力,培养学生完成项目实践的能力,同时,要培养学生交流的能力,能够很好地表达自己的设计思想,这也是工程实践中必不可少的。因此,在整个课程中,指导教师多次与学生交流设计方案,让学生在与老师的交流中逐渐理解处理器的工作原理。同时,培养学生书写报告的能力,很多学生只注重编程序,而不重视课程报告的撰写,这需要老师的引导和成绩比例分配的导向,让学生真正理解报告不仅是写给老师看的,更重要的是真正通过报告的形式提交自己的设计思想。通过口头交流和文字的书写,引导学生明确设计思路,体会整机的设计思想,使“设计”真正成为完成该“项目”的第一步。

 这次课程设计对于我个人有很大的收获,对于复杂模型计算机的设计有了一定的了解,意识到专业知识的重要性,要想学好一定要下狠功夫,没有付出,怎有回报,同时也体会到理论的知识的理解必须依靠实践是的有力结合,才能对学习的知识融会贯通,了解透彻,实践永远是检验真理的唯一标准,我希望在学习的过程能够多开展这样的有意义的课程设计,对于学生的知识的提高有很大的帮助,期待下一次这样课题的课程设计,我将一如既往热情地投入到学习的过程中,求知,求学,更好学好专业,优秀完成专业任务,丰富自己的专业知识,求得更快成长!

  八 参考资料 [1] 陈华光. 计算机组成原理[M].北京:机械工业出版社,2004

 [2] 杨小龙. 计算机组成原理与系统结构实验教程[M],西安:西安电子科技大学出版社,2004

 附件(程序清单):

 $P0044 $P01B0 $P0245 $P03C1 $P0486 $P050c $P0600 $M00018108 $M0101ED82 $M0200C050 $M0300A004 $M0400E0A0 $M0500E006 $M0600A007 $M0700E0A0 $M0801ED8A $M0901ED8C $M0A00A03B $M0B018001 $M0C00203C $M0D00A00E $M0E01B60F $M0F95EA25 $M1001ED83 $M1101ED85 $M1201ED8D $M1301EDA6 $M14001001 $M15030401 $M16018016 $M173D9A01 $M18019201 $M1901A22A $M1A01B22C $M1B01A232 $M1C01A233 $M1D01A236 $M1E318237 $M1F318239 $M20009001 $M21028401 $M2205DB81 $M230180E4 $M24018001 $M2595AAA0 $M2600A027 $M2701BC28 $M2895EA29 $M2995AAA0 $M2A01B42B $M2BB59B41 $M2C01A42D $M2D65AB6E $M2E0D9A01 $M2F01AA30 $M300D8171 $M31959B41 $M32C19A01 $M3301B435 $M3405DB81 $M35699B41 $M36CD9A01 $M37298838 $M38019801 $M3919883A $M3A019801 $M3B070A08 $M3C068A09

  计算机科学与技术系课程设计评分表

  课题名称:复杂模型计算机的设计

 项

 目 评

  价 设计方案的合理性与创造性

 设计与调试结果

 设计说明书的质量

 答辩陈述与回答问题情况

 课程设计周表现情况

 综合成绩

 教师签名:

  日

  期:

 

Tags: 课程设计   原理   计算机  

搜索
网站分类
标签列表