一台模型计算机设计与测试课程设计.docx
《一台模型计算机设计与测试课程设计.docx》由会员分享,可在线阅读,更多相关《一台模型计算机设计与测试课程设计.docx(17页珍藏版)》请在冰豆网上搜索。
一台模型计算机设计与测试课程设计
辽宁工业大学
计算机组成原理课程设计(论文)
题目:
一台模型计算机设计与测试
——寄存器寻址流程
院(系):
专业班级:
学号:
学生:
指导教师:
教师职称:
起止时间:
课程设计(论文)任务及评语
院(系):
教研室:
学号
学生
专业班级
课程设计(论文)题目
一台模型计算机设计与测试
——寄存器寻址流程
课程设计(论文)任务
将微程序控制器同执行部件(整个数据通路)联机,组成一台模型计算机;用微程序控制器控制模型机数据通路;通过CPU运行九条机器指令(排除中断指令)组成的简单程序,掌握机器指令与微指令的关系,牢固建立计算机的整机概念。
主要设计容:
使用计算机组成原理实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等,将几个模块组合成为一台简单计算机。
本次课程设计中,数据通路的控制将由微程序控制器来完成。
CPU从存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。
要求:
1、根据题目和实验箱中的所有电路,设计一台简单计算机,并绘制出电路原理图以及微程序流程图。
2、认真独立完成所规定的设计容(4000字左右),严禁相互抄袭;
3、撰写、打印设计说明书一份。
指导教师评语及成绩
平时成绩:
论文质量:
答辩:
总成绩:
指导教师签字:
年月日
第1章一台模型计算机设计方案
1.1引言
1.题目的意义:
本次课程设计可以使用计算机组成原理实验中的所有电路,包括运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等,将几个模块组合成为一台简单计算机。
在前面的实验中,实验者本身作为“控制器”,完成数据通路的控制。
而在本次课程设计中,数据通路的控制将由微程序控制器来完成。
CPU从存取出一条机器指令到执行指令结束的一个机器指令周期,是由微指令组成的序列来完成的,即一条机器指令对应一个微程序。
2.应用场合:
操作数在寄存器中,由指令操作码中的rrr三位的值和PSW中RS1及RS0的状态,选中某个工作寄存器区的某个寄存器,然后进行相应的指令操作。
指令所要的操作数已存储在某寄存器中,或把目标操作数存入寄存器。
把在指令中指出所使用寄存器(即:
寄存器的助忆符)的寻址方式称为寄存器寻址方式。
3.系统功能:
进行寄存器寻址。
1.2总体方案论述
1.2.1从整体上阐述该设计题目实现方案
了解模型机的硬件系统,根据所提供的模型机的机器指令, 画出用微命令表示的机器指令执行流程图,编写微程序,编写机器指令测试程序,在仿真软件上运行并检验所设计的微程序的正确性。
为完成上述系统功能,选择和设计运算器、存储器、通用寄存器堆、程序计数器、指令寄存器、微程序控制器等电路组成一台简单的计算机系统。
(1)利用机器指令系统编制简单程序,要求至少使用其中五条指令,对自己编制的简单程序进行译码,手工汇编成十六进制机器代码。
并根据老师指定完成不同的子标题,即程序中必须包含子标题类型的指令。
(2)参考计算机组成原理实验,再加上中断系统,完成本次实验的线路连接。
接通电源之前应仔细检查连接,确认无误。
(3)将上述任务
(1)中的程序机器代码用控制台操作存入存中,并根据程序的需要,用数码开关SW7—SW0设置通用寄存器及存相关单元的数据。
(4)从地址20H执行程序,在程序执行中,按一次控制台的INTR。
进入中断后,用单拍(DP)方式执行,直到返回主程序为止。
列表记录中断系统中有关信号的变化情况,特别要记录好断点地址和R0的值。
(5)重复执行(4)两次
(6)将RAM中20H的单元容由指令INTS改为INTC,重作(4),记录发生的现象。
1.2.2系统总体框图
图1.1系统总体框图
1.2.3各部分功能电路的作用
1.运算器部件是计算机中进行数据加工的部件,其主要功能包括:
(1)执行数值数据的算术加减乘除等运算,执行逻辑数据的与或非等逻辑运算,由一个被称为ALU的线路完成;
(2)时存放参加运算的数据和中间结果,使用多个通用寄存器来实现;
(3)运算器通常也是数据传输的通路。
2.双端口存储器
双端口存储器RAM由一片IDT7132(U36)及少量附加控制电路组成。
IDT7132是2048字节的双端口静态随机存储器,本机实际使用256字节。
IDT7132两个端口可同时进行读、写操作。
具有记忆功能,用来保存信息,如数据,指令和运算结果等等。
3.地址寄存器AR1和AR2
地址寄存器AR1(U37)和AR2(U27,U28)提供双端口存储器的地址。
AR1是一片GAL22V10,具有加1功能,提供双端口存初期左端的第值。
AR1从数据总线DBUS接受数据。
AR1的控制信号是LDAR1和AR1_INC。
当AR1_INC=1是,在T4的上升沿,AR1的值加1。
当LDAR1=1时,在T4的上升沿,AR1的值加1;当LDAR1=1时,在T4的上升沿,将数据总线DBUS的数据打入地址寄存器AR1。
AR2由2片74HC298组成,月两个数据输入端,一个来自程序计数器PC,另一个来自数据总线DBUS。
AR2的控制信号是LDAR2和M3。
M3选择数据来源,当M3=1时,选中数据总线DBUS;当M3=0是,选中程序计数器PC。
LDAR控制合适接受地址,当LDAR2=1时,在T2的下降沿江选中的数据源上的数据打入AR2。
4.指令寄存器IR
指令寄存器IR是一片74HC374(U20)。
它的数据端从双端口存储器接受数据(指令)。
当LDIR=1时,在LDIR=1时,在T4的上升沿将来自双端口存储器的指令打入指令寄存器IR保存。
指令的操作码部分应连接到寄存器堆,选择参与运算的寄存器。
在某些情况下,指令的操作数部分也参与新的计算。
5.通用寄存器
通用寄存器:
是那些你可以根据自己的意愿使用的寄存器,修改他们的值通常不会对计算机的运行造成很大的影响。
通用寄存器最多的用途是计算。
6.程序计数器
程序计数器(PROGRAMCOUNTER)是一个二进制16位的程序地址寄存器,专门用来存放下一条需要执行的指令在程序存储器中的地址,能自动加1。
CPU执行指令时,它根据程序计数器(PC)中的地址从程序存储器中取出当前需要执行的指令码,并把它送给控制器分析执行,随后程序计数器(PC)中地址码自动加1,以便为CPU取下一条需要执行的指令码作准备。
当下一个指令字节取出执行后,PC又自动加1,这样,程序计数器一次次加1,指令就被一个字节一个字节地执行。
所以,需要执行程序的机器码必须在程序执行前预先一条条地按顺序放到程序存储器中,并为程序计数器设置成程序第一条指令的存地址。
8051程序计数器由16个触发器构成,故它的编码围为0000H~0FFFFH,共64KB。
7.微程序控制器
它主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成。
控制存储器用来存放实现全部指令系统的微程序,它是一种只读存储器。
一旦微程序固化,机器运行时则只读不写。
其工作过程是:
每读出一条微指令,则执行这条微指令;接着又读出下一条微指令,又执行这一条微指令……。
读出一条微指令并执行微指令的时间总和称为一个微指令周期。
通常,在串行方式的微程序控制器中,微指令周期就是只读存储器的工作周期。
控制存储器的字长就是微指令字的长度,其存储容量视机器指令系统而定,即取决于微程序的数量。
对控制存储器的要速度快,读出周期要短。
微指令寄存器用来存放由控制存储器读出的一条微指令信息。
其中微地址寄存器决定将要访问的下一条微指令的地址,而微命令寄存器则保存一条微指令的操作控制字段和判别测试字段的信息。
地址转移逻辑在一般情况下,微指令由控制存储器读出后直接给出下一条微指令的地址,通常我们简称微地址,这个微地址信息就存放在微地址寄存器中。
如果微程序不出现分支,那么下一条微指令的地址就直接由微地址寄存器给出。
当微程序出现分支时,意味着微程序出现条件转移。
在这种情况下,通过判别测试字段P和执行部件的“状态条件”反馈信息,去修改微地址寄存器的容,并按改好的容去读下一条微指令。
地址转移逻辑就承担自动完成修改微地址的任务。
第2章系统的硬件设计
2.1系统整体设计方案
总体设计方案中首先要确定整体控制系统的结构和类型。
另外总体设计方案中还要包括硬件设计与软件设计两大部分,具体设计时一般采用“黑箱”设计方法,就是根据控制要求,将完成控制任务所需的各功能单元、模块以及控制对象,采用方块图表示,从而形成系统的总体框图。
总体设计中还应包括控制系统对现场工艺的要求,比如为了安装某个关键的现场仪表,需要改装某根管道;为了控制方案的实施,需要工艺人员的配合,增加现场气源等。
总之,总体方案是整个控制系统设计的关键,要实现一个好的设计必然离不开对生产工艺的深入了解以及工艺技术人员的支持与配合。
1.硬件总体方案设计
计算机控制系统的硬件总体设计主要包括以下方面的容:
系统的构成方式;现场设备及自动化仪表的选择;人—机接口方式;系统的控制机箱结构设计;抗干扰措施等。
2.软件总体方案设计
软件总体方案设计的容主要是确定软件平台、软件结构、任务分解,建立系统的数学模型、控制策略和算法的实现等。
3.总体方案文档
其容包括:
(1)系统的主要功能、技术指标、原理性方框图及文字说明。
(2)控制策略与算法。
(3)系统的硬件结构与配置,主要的软件功能、结构、平台及实现框图。
(4)方案的比较与选择。
(5)抗干扰措施与可靠性设计。
(6)机柜或机箱的结构与外形设计。
(7)经费和进度计划的安排。
(8)对现场条件的要求。
2.2数据通路设计
1.数据通路:
数据在功能部件之间传送的路径称为数据通路。
运算器与各寄存器之间的传送路径就是中央处理器部数据通路。
“数据通路”描述了信息从什么地方开始,中间经过哪个寄存器或多路开关,最后传送到哪个寄存器,都要加以控制。
建立数据通路的任务,是由“操作控制部件”来完成。
数据通路的功能是实现CPU部的运算器和寄存器以及寄存器之间的数据交换。
2.数据通路的基本结构
数据通路的基本结构主要有两种方式:
(1)CPU部总线方式:
将所有的寄存器的输入端和输出端都连接到一条或多条公共的通路上,这种结构比较简单,但是数据传输存在较多的冲突现象,性能较低,如果连接各部件的总线只有一条,则称单总线结构;如果CPU中有两条或更多的总线,则构成双总线结构和多总线结构。
在双总线或多总线结构中,数据的传递可以同时进行。
(2)专用数据通路方式(不采用CPU部总线方式):
根据指令执行过程中的数据和地址的流动放心安排连接线路,避免使用共享的总线,性能比较高,但硬件量大。
2.3存储器的设计
双端口存储器RAM由一片IDT7132(U36)及少量附加控制电路组成。
IDT7132是2048字节的双端口静态随机存储器,本机实际使用256字节。
IDT7132两个端口可同时进行读、写操作。
在本机中,左端口的数据连线数据总线DBUS,可进行读、写操作,右端口数据和指令总线INS连接,输出到指令寄存器IR,作为只读端口使用。
存储器IDT7132有6个控制引脚:
CEL#,LRW,OEL#,CER#,RRW,OER#。
CEL#,LRW,OEL#控制左
端口读、写操作;CER#,RRW,OER#控制右端口读、写操作。
CEL#为左端口选择引脚,低有效,为高时禁止左端口操作;LRW为高时,左端口进行读操作,LRW为低时,左端口进行写操作;OER#为低时,将左端口读出的数据放到数据总线DBUS上。
CER#,RRW,OER#控制右端口读、写操作的方式与CEL#,LRW