动物科学课程设置与学分

点赞:5085 浏览:17982 近期更新时间:2024-01-01 作者:网友分享原创网站原创

计算机组成原理课程设计

课程设计名称:计算机组成原理

设计项目名称:基本模型机设计与实现

专业:计算机科学与技术

班级:24020504

学号:24020500406

姓名:刘盼

指导教师:周立

2016年1月4日

一、课程设计的教学目的

本课程设计的教学目是在掌握计算机系统的组成及内部工作机制,理解计算机各功能部件工作原理的基础上,深入掌握数据信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识和整机的概念,培养开发和调试计算机的技能,在设计实践中提高应用所学专业知识分析问题和解决问题的能力.

二、课程设计任务和基本要求

三、设计任务及分析:

0,01H

0000000100000001

0000001000010000INR0,[[0CH]],

0000001100001100

0000010000100000NOTR0,

0000010100110000XORR0,[[0CH]],

0000011000001100

0000011101000000MOV[0DH],R0,

0000100000001101

0000100101010000OUT[0DH],

0000101000001101

0000101101100000HLT,

数据区:

0000110000001110

0000111000000000

0000110100000000

本设计的汇编指令如下:

指令注释

STAR0,01H,将01H存在寄存器R0中

IN[[0CH]],给间接地址为0CH的内存单元单元中置数

NOTR0,给R0中的内容取反

XORR0,[[0CH]],将间接地址为0CH的内存单元的内容和寄存器R0中的内容执行

异或运算,结果存入寄存器R0

MOV[0DH],R0,将寄存器R0中的内容存入直接地址为0DH的内存单元中


OUT[0DH],输出0DH中的内容

HLT,停机

为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了三个控制台操作微程序.

存储器读操作(KRD):拨动总清开关CLR后,当控制台开关SWB,SWA置为"00"时,按START微动开关,可对RAM进行连续手动读操作.

存储器写操作(KWE):拨动总清开关CLR后,当控制台开关SWB,SWA置为"01"时,按START微动开关,可对RAM进行连续手动写入.

启动程序:拨动总清开关CLR后,当控制台开关SWB,SWA置为"11"时,按START微动开关,即可转入到第01号"取指"微指令,启动程序运行.

上述三条控制台指令用两个开关SWB,SWA的状态来设置,其定义如表1:

表1

SWBSWA控制台指令00读内存(KRD)01写内存(KRD)01启动程序(RP)根据以上要求设计数据通路框图如图1所示.

图1数据通路框图微指令格式如表2所示.当微指令格式确定以后,下一步就是确定后续微指令地址.通常的方法是先确定微程序分支处的微地址,因为微程序分支处需要进行判断测试.这些微地址确定以后,就可以在一个"微地址表"中将分支微指令填入相应得分支地址单元,避免以后的设计中因重复使用而造成错误.对于其它位置就可以按一条微指令对应一个微地址随意填写.

表2微指令格式

242322212019181716151413121110987654321S3S2S1S0MCnWEA9A8ABCμA5μA4μA3μA2μA1μA0

A字段B字段C字段151413选择121110选择987选择000000000001LDRi001RS-B001P(1)010LDDR1010RD-B010P(2)011LDDR2011RI-B011P(3)100LDIR100299-B100P(4)101LOAD101ALU-B101AR110LDAR110PC-B110LDPC按照数据通路可画出机器指令的微程序流程图如图2所示.当拟定"取指"微指令时,该微指令的判别测试字段为P(1)测试.由于"取指"微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支.本机用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定的微地址单元.

动物科学课程设置与学分参考属性评定
有关论文范文主题研究: 关于课程设计的论文范文集 大学生适用: 学位论文、本科论文
相关参考文献下载数量: 54 写作解决问题: 如何怎么撰写
毕业论文开题报告: 论文提纲、论文题目 职称论文适用: 刊物发表、初级职称
所属大学生专业类别: 如何怎么撰写 论文题目推荐度: 最新题目

当全部微指令设计完毕后,应将每条微指令代码化,表3即为将图2微程序流程图按微指令格式转化而得到的"二进制代码表".

表3二进制微代码表微地址S3S2S1S0MCNWEA9A8ABCμA5等μA0000000000110000001000100000100000001111011011000001002000000001100000001001000030000000010010000000000010400000000111000000000010105000000001110000000000110060000000000100000000001110700000110100010100000000110000000011110110110000011110000000111101101100001001200000001101100100000111113000000011110110110010101140000000111101101100111001500000001111011011001111016000000011000000000001110170101100110011010000000012000000001111011011001001021000000011110110110010100220000000010100000000101112300000001100000000000000124000000000010000000011000250000000011100000000101102600000000111000000001100127000001110000101000010000300000011010001010000100013100000000101000000001101032000000011011001000011011330110100110011010000000013400000000111000000001110135000000101000001000000001360000000011100000000111113700000000101000000010000040000001110000101000000001指令寄存器(IR)用来保存当前正在执行的一条指令.当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传送至指令寄存器.指令划分为操作码和地址码字段,由二进制数构成.为了执行任何给定的指令,必须对操作码进行测试[P(1)],通过节拍脉冲T4的控制以便识别所要求的操作."指令寄存器"(实验板上标有"INSDECODE"的芯片)根据指令中的操作码译码结果强置微控器单元的微地址,使下一条微指令指向相应得微程序首地址.

本系统使用两种外部设备,一种是二进制代码开关,它作为输入设备(INPUTDEVICE),另一种是数码管,它作为输出设备(OUPUTDEVICE).例如:输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变.输出时,将输出的数据送到数据总线BUS上,当写信号(W/R)有效时,将数据打入输出锁存器,在数码管显示.

五、操作步骤

1.按图3连接实验电路

2.联机写程序

按照规定格式,将机器指令及微指令二进制代码表(如表4)编辑成十六进制的文件.

机器代码:

$P0000

$P0101

$P0210

$P030C

$P0420

$P0530

$P060C

$P0740

$P080D

$P0950

$P0A0D

$P0B60

$P0C0E

$P0D00

$P0E00

微指令格式:

$M00018110

$M0101ED82

$M0200C048

$M03009001

$M0400E005

$M0500E006

$M06002007

$M07068A01

$M0801ED83

$M0901ED84

$M0A01B20F

$M0B01ED95

$M0C01ED9C

$M0D01ED9E

$M0E01800E

$M0F599A01

$M1001ED92

$M1101ED94

$M1200A017

$M13018001

$M14002018

$M1500E016

$M1600E019

$M17070A10

$M18068A11

$M1900A01A

$M1A01B21B

$M1B699A01

$M1C00E01D

$M1D028201

$M1E00E01F

$M1F00A020

$M20070A01 3联机运行

联机运行程序时,进入软件界面,转储→装载,再弹出窗口选择要装载的文件(*.txt格式),在装载完机器指令及微指令后,选择(运行)→(通路图)→(复杂模型机)功能菜单打开相应的动态数据通路图,按相应功能键即可联机运行,监控,调试程序.本试验采用微指令单

步运行

运行微程序

01

01

02

02

10

STAINNOTXORMOVOUTHLT

10111213141516

10111214

030417253436

030617

05263537

010401

063140

0501

0732

01

33

01

01

01

图2微程序流程图

图3接线图

六、实验结果.

本实验的操作数为X等于03H,Y等于01H,其中X的直接地址为0EH,间接地址为0CH,Y取反后和X进行逻辑异或运算的结果为FDH,将此结果保存在FDH中,最后输出单元输出的结果为FDH

第一条机器指令STA01H(Y)移入寄存器R0,该指令执行之后,R0中的内容为01H.

第二条机器指令IN,从数据开关将03H(X)输入到内存,将其存入直接地址为0EH,间接地址为0CH的内存单元.

第三条机器指令NOT将寄存器R0中的内容取反,结果仍存入R0.该指令执行之后,R0中的内容为FEH.

第四条机器指令XOR将X放入DR1中,将R0中的内容放入DR2中,将DR1和DR2种的数进行异或运算,结果放在R0中.此时R0中的内容为FDH.

第五条机器指令MOV将结果存入直接地址位0DH的内存单元中.

第六条机器指令OUT将0DH中的内容送到DR1,从DR1输出.此时数码管显示为FDH.

第七条机器指令HLT为暂停.

七、实验总结

通过这次的课程设计,我明白了机器指令和微指令之间的关系,机器指令为微指令提供入口以及操作数或操作数的地址,微指令具体实现机器指令所指定的功能.此外,通过这次实验,我对微程序控制器的工作方式有了更进一步的理解,将知识运用于实践中,根深的理解和掌握知识,同时也是对自己分析问题,解决问题的能力的考验,通过这次实践为我以后的学习打下基础.

八,参考文献

《计算机组成原理》科学出版社白中英着

《计算机组成原理与应用》工业出版社王子齐着

九,教师点评

教师姓名:

日期:

DR1→LED

RAM→BUS

BUS→DR1

R0→BUS

BUS→RAM

DR1⊕DR2

→R0

DR1→RAM

R0→DR2

RAM→BUS

BUS→AR

RAM→BUS

BUS→AR

R0→DR2

SW→BUS

BUS→DR1R0

RAM→BUS

BUS→DR1

BUS→AR

DR1

RAM→BUS

BUS→AR

BUS→AR

RAM→BUS

BUS→AR

BUS→DR2

RAM→BUS

BUS→R0

R0

RAM→BUS

BUS→AR

RAM→BUS

BUS→AR

→R0

PC→AR

PC+1

PC→AR

PC+1

PC→AR

PC+1

PC→AR

PC+1

HLT

P(1)

RAM→BUS

BUS→IR

PC→AR

PC+1

PC→AR

PC+1