计算机基本模型机设计与实现

计算机基本模型机设计与实现
计算机基本模型机设计与实现

计算机基本模型机设计与实现

万红明,李明威

——湖北省孝感学院计算机科学系

摘要:本科研项目主要在传统模型机的基础上进一步设计且实现模型机的主要组成部件(运算器,存储器,控制器,基本输入输出设备)的基本功能,结合基本硬件资源,充分利用微程序,时序,组合逻辑等控制模型机完成一些基本的指令功能。

关键词:计算机组成原理模型机微指令微程序。

一、模型机的硬件组成

计算机是由运算器、存储器、控制器以及输入输出四大主要单元组成。它们之间通过一条公共的通道进行数据的传递和控制,即总线。其中运算器主要是负责数据的逻辑和算术运算,存储器的任务就是存放我们编写的机器指令(程序)和一般的数据存储,控制器是根据读取内存中的机器指令从而对相应的指令作出分析,继而对我们的计算机发不同的控制信号。输入输出单元则是将我们需要运行的程序写入内存,再由机器运行计算得出结果,予以显示输出。下图为模型机的基本框架:

图(1)

下面我们就对模型机的硬件设计思路作一些简要的介绍(设计的重点是在微程序的设计上,在后面我们将作祥细的说明。

(1)算术逻辑运算单元

我们用的运算器是将两个74LS181进行级联做成一个八位的运算器,并且带有进位功能。当有进位产生时,在高四位的74LS181上的CN+4端输出一个高电平,经D触发器锁存输出并送致LED显示。74LS181有多种组合状态,因此会有多种不同的结果。我们在此只设计实现两个数据相加的功能。它的输入端直接连着两个锁存器(74LS273),它能够将输入端的数据送进锁存器内锁存,进而将数据送进运算器进行算术或逻辑运算。运算器运算后的结果将通过一个三态门(74LS245)后才能送到总线与其它的部件交换数据,设计中三态门的作用是使各部件正常工作而互不影响。

(2)存储单元

存储器芯片选用的是6116(2K x 8),其数据端接至数据总线,地址由地址锁存器(74LS273)给出。数据开关经一三态门(74LS245)连至数据总线,分时给出地址和数据。

(3)计数器单元

计数器由两片四位的计数器(74LS161)级联组成的,计数值最大为255,这是由于我们的计数器只有八位。计数器是用来存储即将执行下一条指令的地址的,还可实现程序的跳转。

(4)寄存器单元

这里的寄存器只由一个芯片74LS374实现,它是用来保存间接寻址时的内存的有效值和中间运算结果的。

(5)指令寄存器单元

指令寄存器是用来存放即将要执行的一条指令,当执行一条指令时,先把它从内存取到指令寄存器。再由指令寄存器输出的机器指令通过一个专门的组合逻辑电路译出相应指令的微程序首地址,进而再由控制器发出控制信号,完成该指令所要完成的功能。 (6)输入输出控制单元 主要是用来与机器进行人机交流而设的,将人需要表达的意愿通过机器来实现并反馈给人所实现的结果。

二、微控制器及指令系统

微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和其它各种操作。该微命令即为微程序,它存储在一种专用的存储器中,称为控制存储器(2716)。在此还有一个很重要的单元需要说明,就是机器的生命源时序控制。其框图如图(2)所示。

时序控制电路

START STEP CLR

TS1TS2TS3TS4

图(2)

图中 ¢ 为时钟信号,由一方波信号源提供,可产生频率及脉宽可调的方波信号。当时

序工作为连续状态时,它可以产生如图(3)所示的时序信号TS1~TS4。

TS1

TS2

TS3

TS4

CPU周期

CPU周期

图(3)

1。微程序控制原理

微程序控制器的原理图见附录(2),微命令寄存器16位,用两片8D 触发器(74LS273)组成,设计中只用了其中的14位。其中一片的输出信号控制着运算器和内存的工作方式,剩下一片用其低六位通过两片74LS138译码输出产生11条控制信号,还有5条输出端没有使用。微地址寄存器用的是8位的,设计中只用到它的低五位。

芯片的工作并不是全部只由所对应的控制信号来控制的,大多都是通过与时序信号共同作用来控制的,这主要是为了提高机器的执行效率,让它能在一个CPU 周期内执行更多的操作。这样也能够大大减少微程序的数量,即充分的利用了机器的资源,而且还减少了对硬件资源的需求。

对于时序T1~T4的安排具体如下:(即在对应时刻时,下列控制信号所对应的器件将执行相关的操作)

T1:取微命令和部分B字段的控制信号如:PC-B,CE,W/R ,ALU-B,RS-B,LD(LD 对置数的控制)。

T2:各锁存器的输入端控制如:R0,R1,Ri,AR,IR,Rp,PC以及隐含LD对计数器时钟输入端的控制。

T3:存放指令对应的微程序首地址的寄存器(74LS374)的输入控制端。

T4:向控存送下一条微指令地址的微地址锁存器的输入控制端。

图(4)

2。微程序执行顺序强制改变原理

关于微地址的强制跳转的电路图如图(5)所示,当取指阶段到来时,首先在T1时刻会将IR置为“1”,这时微地址锁存器与控存相联接的一个三态门将会被截止,而将中间寄存器74LS374的输入端置为有效,等到T3时刻到来时,通过组合逻辑翻译来的微程序首地址就被送入寄存器里,只等T4时刻到来时,又可将该地址送入微地址锁存器内,从而实现了微地址的跳转。关于微程序的设计流程及微指令见图(4)和附录一。

图(5)

指令与其对应微指令映射表:

机器指令微指令首地址

指令助记符Q3 Q2 Q1 u5 u4 u3 u2 u1

STOP 0 0 0 0 0 0 1 1

MOV [addr] , A 0 0 1 00100

MOV A , #data 0 1 0 0 1 0 0 0

MOV A , [addr] 0 1 1 0 1 0 1 0

ADD A , #data 1 0 0 1 1 1 1 0

ADD A , [addr] 1 0 1 1 0 0 1 0

JMP [addr] 1 1 0 1 1 0 0 0

OUT [addr] 1 1 1 1 1 0 1 0

根据真值表即可列出组合逻辑的表达式,进而根据表达式作出如图(4)中的组合逻辑图。

3。指令与微指令的联系及操作过程

(1)指令的格式用操作过程

下面将给出一个实际例子:实现两个数相加的,将结果存在内存,然后再将此数从内存中取出输出显示。

助记符机器指令:操作码操作数

MOV A,54H 0000 0010 0101 0100

MOV [91H],A 0000 0001 1001 0001

MOV A,65H 0000 0010 0110 0101

ADD A,[91H] 0000 0101 1001 0001

MOV [92H],A 0000 0001 1001 0010

OUT [92H] 0000 0111 1001 0010

STOP 0000 0000

(注:以上前五条指令中每条占用两个字节的存储单元,最后一条只占用一个字节的存储单元。)

操作步骤如下:

(一)、将附录一中的微指令依次从控存的00H单元输入。这里用来选中控存地址的开关用的是一个总的开关组,如附录三中的右边的一组输入开关。这里还需要将控制器内的微地址开关和写数开关指“0”,来赋予开关的使用权。微指令输入完后,再将那些开关恢复为保护状态(即不影响其它部件的工作状态)。

(二)、根据助记符的格式将程序编写好,然后翻译成相应的机器指令。依次将这些指令通过机器上的拨动开关写入内存。参照附录(二)或模型机全图,先复位所有的寄存器,然后断开内存与微控制器的控制信号(即断开S-WR1和S-CS1开关),闭合图中的S-WR2和S-CS2开关,再通过图中的可控开关及S按钮开关,输入开关来共同控制输入数据。可控开关推上去即为选中高电平(“1”),推下来则是低电平(“0”)。由于复位后,地址寄存器已清零了,所以写第一条指令的操作码时不需要给它送地址数,直接将第一条指令的操作码通过输入开关输入到总路线,再通过两个可控开关来控制存储器的读写。写第一条指令的操作码时,则需要先将地址数送到地址寄存器,选中内存的下一个地址单元。这里是通过S按钮将预先送到总线上的地址数(0000 0001)打入到地址寄存器锁存的,接下来的操作就如上面介绍的相同。

(三)、输入完所有微指令和机器指令后,再将所有寄存器清零,这个操作主要是让计数器的计数由00H开始计数。然后直接启动时序控制开关,将时序置为连续运行方式。或者启用单步运行态,手动运行程序。

注:输入微地址时,有低五位有效,高三位已全部置0。输入B,A字段的微代码只占用控

存(2)的低6位。其高两位可用可不用。关于某些芯片的用法请参考附录(三)。)(2)指令跳转的实现

指令的跳转在程序中是一个很重要的功能,在此将实现程序的跳转的过程将通过电路图(6)来作一下简要的介绍:

图(6)

当机器执行跳转指令的第二条微指令时,在T1时刻就将LD置为低电平,同时内存中的待跳转的指令地址也同时读到总路线上,这时还需在CLK端送一个正时钟脉冲,才能将总路线上的数送到计数器。紧接着在T2时刻到来时,产生一个正脉冲与LD取反后的高电平相与正好构成计数器所需要的脉冲,从而将计数器内的指令地址改变,待要执行下条指令时,取到指令寄存器内的操作码就不再是上一条指令紧接着的下一条指令的操作码了,而是给计数器置数的那一个地址对应指令的操作码,从而达到指令跳转功能。

三、结语

通过这次对模型机的设计使大家能够在完成基本部件课程的基础之上进一步提高创新能力,知识的综合运用能力和分析问题、解决问题的能力。同时也为以后在学习计算机其它课程中打下坚实的硬件基础。完整的建立了计算机的整机概念,可使实验内容和理论教学有机的结合起来,有效地提高实验教学水平,使大家能够对理论与实践融会贯通,达到较好效果。

参考文献:

[1] 唐朔飞,计算机组成原理,高等教育出版社1999

[2] 倪继列,刘新民微机原理与接口技术(第二版)电子科技大学出版社2004

[3] 曹汉房,数字电路与逻辑设计(第三版)华中科技大学出版社1999

[4] 西安唐都科教仪器公司实验指导书2002

Design and Implementation of the basic computer model

(Li Mingwei, Wan Hong-ming,Liu Xiaoning)

―Xiaogan, Hubei Institute of Computer Science Department Abstract :The research mainly in the traditional model based on further design model is realized, the main components (calculator.Memory controller, the basic input-output equipment), the basic functions of the basic combination of hardware resources, make full use of micro-program.Timing, controlled model combinational logic to complete some basic command functions.

Keywords : Computer architecture model plane Micros Micro procedures.

字段安排表:

微指令表:

A 段 A 段选中控制信号

B 段 B 段选中控制信号

0 0 0 0 0 0 0 0 1 R0 0 0 1 PC 0 1 0 R1

0 1 0 PC-B 0 1 1 Ri 0 1 1 1 0 0 AR 1 0 0 ALU-B 1 0 1 IR 1 0 1 RS-B 1 1 0 Rp 1 1 0 LD 1 1 1

1 1 1

S3 S2 S1 S0 M CNWR CE

A B 下一条微地址

当前地址

u5 ~ u1

取机器指令

0 0 0 0 0 0 0 1

0 0 0 0 0 0 0 0 0 0 1 00H 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 01H 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 1 0 02H 停机(STOP ) 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 03H 将累加器A 的内容存到内存中某一地址单

元中

(MOV A ,[addr]) 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 1 0 1 04H 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 1 0 05H 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 06H 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 07H 取立即数存于A 中 (MOV A ,#data ) 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 01 08H 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 09H 取内存一地址的数到

累加器A

(MOV A ,[addr])

0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 1 1 0AH 0 0 0 0 0 0 1 0 0 1 1 0 0 1

0 1 1 0 0 0BH 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 1 1 0 1 0CH 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0DH 加一立即数,结果存

于累加器A

(ADD A ,#data )

0 0 0 0 0 0 0 1

1 0 0 0 1 0 0 1 1 1 1 0EH 0 0 0 0 0 0 1 0 0 1 0 0 0 1

1 0 0 0 0 0FH 0 0 0 1 0 0 0 1 0 1 1 1 0 0 1 0 0 0 1 10H 0 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 0 0 0 11H 加某一地址内的数,结果存于累加器A (ADD A ,[addr])

0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 1 1 12H 0 0 0 0 0 0 1 0

0 1 1 0 0 1 1 0 1 0 0 13H 0 0 0 0 0 0 0 1 1 0 0 1 0 1 1 0 1 0 1 14H 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 1 0 15H 0 0 0 1 0 0 0 1 0 1 1 1 0 0 1 0 1 1 1 16H 0 0 0 0 0 0 0 1

0 0 1 1 0 1 0 0 0 0 0 17H 程序跳转 (JMP [addr]) 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 1 0 0 1 18H 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 19H 将某一地址中的数输

出显示

(OUT [addr])

0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 1 0 1 1 1AH 0 0 0 0 0 0 1 0 0 1 1 0 0 1 1 1 1 0 0 1BH 0 0 0 0 0 0 0 1 1 0 0 1 0 1

1 1 1 0 1 1CH 0 0 0 0 0 0 1 0

1 1 0

0 0 0

0 0 0 0 0

1DH

运算器74LS181的功能表如下所示:

存储器(6116)的功能表如下:

CE W/R 存储器的工作状况 1 任意状态 无效 0 0 存储器为写状态 1 存储器只读状态

锁存器(74LS273)的功能表如下:

输入D

输出Q 清除(CLR ) 时钟(CLK )

D 0 x x 0 1 ↑ 1 1 1 ↑ 0 0 1 0 x

Q 0

寄存器(74LS374)的功能表如下: 输出控制(RS-B ) 时钟(CLK )

输入D 输出Q 0 ↑ 1 1 0 ↑ 0 0 0 0 x Q 0 1 x x

z

三态门(74LS245)的功能表如下: 使能G 方向控制DIR 操作

0 0 B 数据至A 总路线 0 1 A 数据至B 总路线

1 x

隔开

S3S2S1S0 M=0(算术运算)

M=1(逻辑运算) Cn =1(无进位) Cn =0(有进位)

0 0 0 0 F=A F=A+1 F=A 0 0 0 1 F=A|B F= (A|B)+1 F=B A | 0 0 1 0 F=A|B F=(A|B )+1 F=A B 0 0 1 1 F=0-1 F=0 F=0 0 1 0 0 F=A+A B F=A+A B+1 F=AB 0 1 0 1 F= A B +(A|B) F= A B +(A|B)+1 F=B 0 1 1 0 F=A-B-1 F=A-B F=A ○+B 0 1 1 1 F= A B -1 F= A B F= A B 1 0 0 0 F=A+AB F=A+AB+1 F=A +B 1 0 0 1 F=A+B F=A+B+1

F=B A 1 0 1 0 F=AB+(A|B ) F=AB+(A|B )+1 F=B 1 0 1 1 F=AB-1 F=AB F=AB 1 1 0 0 F=A+A F=A+A+1 F=1 1 1 0 1 F=A+( A|B ) F=A+( A|B )+1 F=A+B 1 1 1 0 F=A+( A|B ) F=A+( A|B )+1 F=A+B 1 1 1 1 F=A-1 F=A F=A

位计数器(74LS161)的功能表如下:

输入(P3 P2 P1 P0) 输出(Q3 Q2 Q1 Q0)

工作 清除 MR 置数 PE 时钟

CLK 使能 Q3 Q2 Q1 Q0 动态进位

CEP CET 1 1 ↑

1 1 — — 计数

1 0 X X P3 P

2 P1 P0 — 数据预置 ↓

0 X X X X 0 0 0 0 — 清除

1 X X X X 1 1 1 1 正脉冲 —

可擦可编只读存储器(2716)的功能表如下:

模式 PD/PGM OE Vpp/V Vcc/V 输出 读 0 0 +5 +5 数据读出 未选中 X 1 +5 +5 高阻 功率下降 1 X +5 +5 高阻 编程 正脉冲 1 +25 +5 数据输入 程序校验 0 0 +25 +5 数据读出 程序禁止 0 1 +25 +5 高阻

时序控制的功能表如下:

STEP STOP START

工作状态 0 0 一正脉冲 停机 1 产生连续的时序

1

0 停机 1

单步运行

计算机硬件课程设计--简单模型机设计

计算机硬件课程设计--简单模型机设计

计算机硬件综合课程设计报告

简单模型机设计 一、设计要求 硬件:TDN-CM+计算机组成原理实验系统一台,PC机一台,排线若干,串口线一根。 软件:CMP软件 二、设计目的 1.通过对一个简单计算机的设计,对计算机的基 本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。 2.通过这次课程设计,建立整机的概念,对程序 进行编辑,校验,锻炼理论联系实际的能力。 3.通过本次课程设计熟悉和训练设计思路与实 现方法。 4.通过本次课程设计锻炼团队合作的能力和团 队问题的解决。

三、设计电路及连线 设计电路及连线实验图如下图1-1所示。 图1-1 简单模型机连线图 四、设计说明 本次课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器

来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本次课程设计采用五条机器指令:IN (输入)、ADD (二进制加法)、STA (存数)、OUT (输出)、JMP (无条件转移),其指令格式如下(前4位为操作码): 助记符 机器指令码 说 明 微程序入口地址 IN 0000 0000 “INPUT DEVICE ”中 10 的开关状态→R0 0001 0000 ×××× ×××× R0+[addr]→R0 11 0010 0000 ×××× ×××× R0→[addr] 12 0011 0000 ×××× ×××× [addr]→BUS 13 0100 0000 ×××× ×××× addr →PC 14 ADD addr STA

16位模型机的设计

16位CPU的设计 要求: 此模型机的功能是将存储区的数据块复制到另一个存储区。 汇编代码如下: START:LOADI R1,0010H ;源操作数地址送R1 LOADI R2,0030H ;目的操作数地址送R2 LOADI R6,002FH ;结束地址送R6 NEXT:LOAD R3,[R1] ;取数 STORE [R2],R3 ;存数 BRANCHGTI START ;如果R1>R6,则转向START INC R1 ;修改源地址 INC R2 ;修改目的地址 BRANCHI NEXT ;转向NEXT 1.16位CPU的组成结构

2.指令系统的设计 一、指令格式 1)单字指令格式 2)双字指令格式 操作码指令功能 00001 LOAD 装载数据到寄存器 00010 STORE 将寄存器的数据存入到存储器 00100 LOADI 将立即数装入到寄存器 00101 BRANCHI 无条件转移到由立即数指定的地址 00110 BRANCHGTI 如果源寄存器容大于目的寄存器的容,则转移到由 立即数指定的地址 00111 INC 寄存器容加1指令 依据以上设计的指令系统,则完成数据块复制的程序如下: 地址机器码指令功能说明 0000H 0001H 2001H 0010H LOADI R1,0010H 源操作数地址送R1

一、程序包:说明运算器的功能、移动寄存器的操作、比较器的比较类型和用于CPU控 制的状态类型。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; package cpu_lib is subtype t_shift is unsigned (3 downto 0); constant shftpass :unsigned(3 downto 0):="0000"; constant sftl :unsigned(3 downto 0):="0001"; constant sftr:unsigned(3 downto 0):="0010"; constant rotl :unsigned(3 downto 0):="0011"; constant rotr :unsigned(3 downto 0):="0100"; subtype t_alu is unsigned(3 downto 0); constant alupass :unsigned(3 downto 0):="0000";

计算机组成原理模型计算机设计实验报告

洛阳理工学院实验报告 系别 计算机与信息工程学院 班级 学号 姓名 课程名称 计算机组成与系统结构 实验日期 实验名称 实验八 模型计算机设计 成绩 实验条件: 1、 DJ-CPTH 超强型组成原理实验箱 2、 PC 机一台 实验要求: 设计模型计算机,并利用CPTH 实验仪的上位机软件控制该模型计算机,实现模型机的数据传送功能。 实验目的: 1、掌握微程序控制模型计算机的基本工作原理和设计方法。 2、掌握微程序存储器uM 的控制方法和上位机软件的使用方法。 实验步骤: (1)运行CPTH ,新建文件。 (2)录入下表中第3列,保存为EX1.ASM 。 (3)单击菜单“汇编”的“汇编下载”。 (4)按“单步”运行,观察A /R0/ R1的变化,记录变化情况。 (5)按“复位”。 (6)按“单步”运行,打开“跟踪”标签,观察微程序和微地址变化,按下表记录变化情况,并填写每一步的功能。 程序地址 机器码 机器指令 功能 00 01 7C 12 mov a,#12h 传送12H 到A 02 80 mov r0,a 传送12到R0 03 81 mov r1,a 传送12到R1 04 05 7C 1E mov a,#30 传送30到A End

状态PC EM IR 微程序功能 T0 01 7C 7C CBFFFF 取出00号单元指令,打入IR T1 01 7C 7C C7FFF7 传送12H到A T0 03 80 80 CBFFFF 取出02号单元指令,打入IR T1 03 80 80 FFFB9F 传送12H到R0 T0 04 81 81 CBFFFF 取出03号单元指令,打入IR T1 04 81 81 FFFB9F 传送12H到R1 T0 05 7C 7C CBFFFF 取出04号单元指令,打入IR T1 05 7C 7C C7FFF7 传送30到A T0 07 00 00 CBFFFF 取出结束指令,同时结束运行实验过程如图所示:

基本模型机的设计与实现课程设计报告

基本模型机的设计与实现课程设计报告 https://www.360docs.net/doc/259738840.html,/maria87328/archive/2008/01/13/2041130.aspx 一、实验基本任务 1、由基本单元电路构成一台基本模型机。 2、设计五条机器指令,并编写相应的微程序。 3、调试指令和模型机使其在微程序的控制下自动产生各部件单元的控制信号正常工作。 二、设计方案 1、硬件设计 (1)设计微程序控制电路 微程序控制器的组成:控制存储器:EPROM2816*3,8D触发器74ls273*2,4D触发器74ls74*3;微指令寄存器格式:18位微指令,6位微地址。 (2)设计时钟信号源和时序控制电路 时钟信号源的组成:时基电路555,可触发单稳态多谐振荡器74ls237*2,输出频率为330-580Hz的方波信号。 时序控制电路:4D触发器74ls175*1组成移位寄存器电路。 (3)设计主存储器 主存电路的组成:6264存储器(8K*8位)*3,地址寄存器:74ls273*1,三态门:74ls245*1。 2、微控制设计 (1)实现存储器读操作; 拨动总清开关后,置控制开关SWC、SW A为“0 0”时,按要求连线后,连续按动“启动运行”开关,可对主存储器RAM连续手动读操作。 (2)实现存储器写操作; 拨动总清开关后,置控制开关SWC、SW A为“0 1”时,按要求连线后,再按动“启动运行”开关,可对主存储器RAM 连续手动写入。 (3)实现程序运行操作。 拨动总清开关后,置控制开关SWC、SW A为“1 1”时,按要求连线后,再按动“启动运行”开关,即可转入到第01号“取址”微指令,启动程序运行。

模型计算机系统的设计与实现

题目:模型计算机系统的设计与实现学生姓名: 学院: 班级: 指导教师: 2010年1 月8 日

内蒙古工业大学课程设计(论文)任务书 课程名称:计算机组成与结构课程设计学院:信息工程学院班级:计07-_3班__ 学生姓名:武宝全 _ 学号: 200710210023 指导教师:董志学王晓荣邢红梅

摘要 本次课程设计要求设计实现一个简单8位模型计算机系统,包括用可编程器件实现的运算器,微程序控制器,存储器,简单输入/输出接口和设备,时序和启停控制等电路。通过自己定义的一套指令系统,主要实现算术A加B,A+/B运算,逻辑A·B,置B运算,输入指令,输出指令和存储器存数指令。由微程序控制器按照微指令格式给出下地址,并将结果存入存储器。用Protel电路设计软件画出所设计的模型机系统的电路原理图,包括运算器,微程序控制器,存储器、简单输入/输出设备、时序和启停等电路。用可编程器件EPM7123实现运算器,并借助MAXPLUSII软件实现其功能。在QDKJ-CMH-CPLD试验平台上调试并进行验证。 关键字:微程序、控制器、存储器、

引言 通过俩周的组成与结构设计,设计一个8位模型计算机系统,包括用可编程器件实现的运算器,微程序控制器,存储器,简单输入/输出接口和设备,时序和启停控制等电路。设计工作是在之前的验证实验基础之上完成的,通过自己的思维,实现微程序机的一些基本的逻辑运算。根据现有的二进制指令系统,条件为模型计算机系统为8位模型机,运算器为8位运算器,数据总线和地址总线都为8位,输入设备为8位开关,输出设备为8位发光二级管指示灯。在现有的芯片内烧制自行设计的微指令,达到在输入一个数据后自加,减一,实现自行跳转。 在设计完成后,再输入数据04后得出07的结果,并实现跳转。

计算机组成原理课程设计基本模型机设计与实现

课程设计(大作业)报告 课程名称:计算机组成原理 设计题目:基本模型机设计与实现 院系:信息技术学院 班级:计算机科学与技术3班 设计者: 学号: 指导教师:________________________________ 设计时间: 昆明学院 信息技术学院 课程设计(大作业)任务书 姓名:院(系):信息技术学院 专业:计算机科学与技术学号:课程设计题目:基本模型机设计与设计课程设计要求: 本课程设计以ZYE1603E计算机组成原理及系统结构教学实验系统为平台,设计完成。 1. 按给定的数据格式和指令系统,设计一个微程序控制器。 2. 设计给定机器指令系统以及微程序流程图,按微指令格式写出微程序的为指令代码。 3. 连接逻辑电路完成启动、测试、编程、测试、效验和运行,并观测运行过程及结果。 4. 将微程序控制器模块与运算器模块,存储器模块联机,组成一台模型计算机。 5. 用微程序控制器控制模型机的数据通路。 6. 通过在模型机上运行由机器指令组成的简单程序,掌握机器指令与微指令的关系, 建立计算机整机的概念,掌握计算机的控制机制。 7. 按指定的应用项目进行汇编指令格式及功能设计,并设计相应的机器指令代码,按照模型机数据通路设计实现机器指令功能的微程序。在PC机上编辑机器指令和微程序, 装载代码到ZYE1603B实验系统并运行,实现应用要求。 工作计划及安排:

2017年6月19日上午:集中进行课程设计题目的讲解和分解,提出学生需要掌握的硬件和软件方面的知识和要求;以及在课程设计期间的安全和纪律要求,熟悉开发环境 (ZYE1603B (4401 机房)。 2017年6月19日下午:查阅资料、确定题目,了解各人(小组)设计安排,就设计过程进行集中讲解,解决设计过程存在的问题。 2017年6月20日~6月22日:在机房进行系统的设计。 2017年6月23日上午:分组讨论,进行交流,了解学生的掌握情况,对本周的学习情况进行总结,对后续的设计提出要求;对存在的问题进行分析和解决。(机房)。 2017年6月23日下午:答辩,成绩评定。 指导教师签字_________________ 2017年6月19日

基本模型机设计及实现

基本模型机设计及实现文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

课程设计任务书课程名称:计算机组成原理 设计题目:(共3个课题,最多3人一组,每组任选一题) 1.基本模型机设计与实现; 2.带移位运算的模型机的设计与实现; 3.复杂模型机的设计与实现。 已知技术参数和设计要求: 内容和技术参数: 利用所学过的理论知识,特别是微程序设计的思想,写出要设计的指令系统的微程序。设计环境为TDN-CM+计算机组成原理教学实验系统,微机,虚拟软件。将所设计的微程序在此环境中进行调试,并给出测试思路和具体程序段。最后撰写出符合要求的课程设计说明书、完成答辩。 1.基本模型机设计与实现 指令系统至少要包括六条不同类型指令:如一条输入指令,一条减法指令,一条加法指令,一条存数指令,一条输出指令和一条无条件转移指令。 2. 带移位运算的模型机的设计与实现 在基本模型机的基础上增加左、右循环和左、右带进位循环四条指令 3. 设计不少于10条指令的指令系统。其中,包含算术逻辑指令,访问内存指令,程序控制指令,输入输出指令,停机指令。重点是要包括直接、间接、变址和相对寻址等多种寻址方式。 以上数据字长为8位,采用定点补码表示。指令字长为8的整数倍。微指令字长为24位。

具体要求: 1、确定设计目标 确定所设计计算机的功能和用途。 2、确定指令系统 确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。确定相对应指令所包含的微操作。 3、总体结构与数据通路 总体结构设计包括确定各部件设置以及它们之间的数据通路结构。在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微命令。 综合考虑计算机的速率、性能价格比、可靠性等要求,设计合理的数据通路结构,确定采用何种方案的内总线及外总线。数据通路不同,执行指令所需要的操作就不同,计算机的结构也就不一样。 4、设计指令执行流程 数据通路确定后,就可以设计指令系统中每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需考虑哪些微操作可以安排在同一条微指令中,哪些微操作不能安排在同一条微指令中。 5、确定微程序地址 根据后续微地址的形成方法,确定每个微程序地址及分支转移地址。 6、微指令代码化 根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码写入到控制存储器中的相应单元中。

模型计算机的设计论文讲解

目录 1模型机设计方案及步骤 (2) 1.1设计方案 (2) 2指令格式 (4) 2.1指令格式 (4) 2.2指令集 (5) 3数据通路 (6) 4指令操作流程 (6) 5微操作控制信号的逻辑表达式 (14) 6微信号简化 (18) 7微信号电路图 (18) 8模型机微控制信号连线图 (19) 9总结与体会 (20) 10附录 (21)

模型计算机的设计 1模型机设计方案及步骤 1.1设计方案 本次课程设计主要任务是设计一模型计算机并利用组合逻辑控制器或微程序进行设计,且至少实现4条CPU指令(从ADD,SUB,XOR,AND,OR中选择)。 在此我选择使用组合逻辑控制器(硬连线)方式设计,并实现ADD,SUB,AND,OR四条指令。 四条指令意义如下: ADD数学计算两个数的和 SUB数学计算两个数的差 AND逻辑运算两个数的并 OR逻辑运算两个数的或 对于以上设计的理由如下: 1.对于方式的选取我们选取硬连线实现,因为此次我们设计的模

型机较为简单,而且采用元件较少,我们采用硬连线可以使用最少的元件从而取得较高的操作速度。 2.对于字长的选取,多方面考虑后,基于资源和设计的需要可以采用八位字长。由于共有四条指令,为了满足选取所以选取其中2位作为OP操作,由于在对数的操作中不仅涉及到对数据的存储还会牵连到指令的操作,在此指令的操作有四条指令所以必须有四个储存单元,加上存储数据的一个单元,一共需要五个单元,再由于计算机存储字长值的限制,选不出5个存储单元的字长。所以至少为3位,其中给出的是8个存储单元,对于寄存器,只有一个数据需要存储,所以1位就行了,但是考虑到计算机存储的限制,所以我们可以把后3位扩展给它。所以共有8位。其中3位表示内存单元地址,用3位表示寄存器编号。加上两个必须的寄存器,其中寄存器有R0、R1、PC、IR。 3.对于内存的选取我们在实际过程中买不到这么小的内存,所以实际操作中可以将前几位置零(接地),用后几位表示即可。 最终根据以上理由我们规定它有8位的数据线D[7:0],执行4条指令,每条指令的长度为1byte,因而它有6位的地址线A[5:0] 。它可以存取的存储器为64byte(1byte=8bits) 我们为该CPU定义以下寄存器:

组成原理课程设计-设计一台模型计算机

计算机组成原理课程设计 一、基本要求:设计一台模型计算机 具体内容: 1. 数据格式和指令系统 2. 数据通路 3. 时序系统 4. 微指令格式 5. 微程序控制器 6. 微程序流程图 7. 微程序代码表 二、模型机设计 1. 数据格式和指令系统的约定 1) 数据格式 模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下: 7 6 5 4 3 2 1 0 其中: 第7位为符号位,数值表示范围是:-1≤X<1。 2) 指令系统 模型机设计四大类指令共16条,其中包括算术逻辑指令(9条)、I/O指令(4条)、访内及转移指令(2条)和停机指令(1条)。 因为指令系统共16条指令,所以操作码是4位。 由于模型机机器字长为8位,故设计单字长指令和双字长指令供使用。 (1) 算术逻辑指令 设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下: 7 6 5 4 3 2 1 0 其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:9条算术逻辑指令的名称、功能和具体格式。

(2) 访内指令及转移指令 模型机设计2条访问指令,即存数(STA)、取数(LDA),2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式为: 7 6 5 4 3 2 1 0 其中,OP-CODE为操作码,Rd为目的寄存器,D为位移量(正负均可),X为寻址方式,其定义如下: (3) 输入输出指令 格式如下: 7 6 5 4 3 2 1 0 其中,addr=01 时,选中“INPUT DEVICE”中的开关组作为入设备,addr=10时,选中“OUTPUT DEVICE”中的数码快作为输出设备。 (4) 停机指令 格式如下: 7 6 5 4 3 2 1 0 这类指令只有一条,即停机指令HALT (5) 模型机指令系统

实验七基本模型机的设计与实现

实验七 基本模型机的设计与实现 一、实验目的 ⒈在掌握部件单元电路实验的基础上,进一步将其组成系统地构造 一台基本模型计算机。 ⒉为其定义5条机器指令,并编写相应的微程序,上机调试掌握整机 概念。 二、实验设备 Dais-CMH+/CMH 计算器组成原理教学实验系统一台,实验用扁平 线、导线若干。 三、实验原理 部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而 本次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特 定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完 成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全 部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、 STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下 (前三位为操作码): ==========================================================助记符 机器指令码 说 明 -------------------------------------------------- ------------- IN R0,SW 0010 0000 数据开关状态 →R0 ADD R0,[addr] 0100 0000 XXXXXXXX R0+[addr]→R0 STA [addr],R0 0110 0000 XXXXXXXX R0→[addr] OUT [addr],LED 1000 0000 XXXXXXXX [addr]→LED JMP addr 1010 0000 XXXXXXXX addr→PC ==========================================================其中IN为单字节(8位),其余为双字节指令,XXXXXXXX为addr对 应的二进制地址码。 根据以上要求设计数据通路框图,如图7-10-1所示。系统涉及到的 微程序流程见图7-7-3,当拟定“取指”微指令时,该微指令的判别测试 字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指 令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前3位 (IR7~IR5)作为测试条件,出现8路分支,占用8个固定微地址单元。 当全部微程序设计完毕后,应将每条微指令代码化,表7-10-1即为 将图7-10-2的微程序流程图按微指令格式转化而成的“二进制微代码

模型计算机设计方案的制定

一、设计任务与要求: 任务: 1.设计一个8位模型计算机系统,包括运算器,微程序控制器,存储器、简单输入/输出设备、时序和启停等电路; 2.画出系统组成框图,指出各个部分的功能和实现途径; 3.针对所设计的模型机系统,每组学生自己定义一套简单的指令系统,给出助记符指令格式,分配指令的机器代码,指出指令的功能; 4.写出设计方案。 要求: 1.所设计的模型计算机系统为8位模型机,运算器为8位运算器,数据总线和地址总线都为8位,输入设备为8位开关,输出设备为8位发光二级管指示灯; 2.每组定义的指令系统为4至8条指令,必须包含本组运算器特有运算功能的指令,每组必须有两条以上指令与其他组不同,经老师审核后确定; 3.每组制定一份设计方案。 二、系统组成框图及各部分的功能和实现途径: (一)、系统的总体结构框图: 图1 总体结构框图 (二)各个部分的功能和实现途径: 1、收发器74LS245 8一位 无反相输出 三态输入

2.、D型触发器74LS273 8一位 清零输入 Q0=在时钟脉冲上升沿之前QT的输出3、算数逻辑单元功能发生器74LS181 4一位 16一功能 逐位进位输出

4.、2K CMOS静态随机存贮器RAM(2048×8)6116 5、D型触发器74LS374 8一位 透明的 无反相 3一态输出 6、累加器74LS163 4一位二器异步清零输入 上计数器可计数输入 置位输入行波进位输出 异步计数

三、简单指令系统: (1)IN A,DATA。指令码10,A指R0,DATA指SW7-SW0上的数据输入到R0寄存器。是输入指令。(2)ADD A,B。指令码20 ,A指R0,B指R1,将R0寄存器的内容与R1寄存器的内容相加,结果送R0,是加法指令。 (3)SUB A,B。指令码30,A指R0,B指R1,将R0寄存器的内容与R1寄存器的内容相减,结果送R0,是减法指令。 (4) OPP A,(OPP)。指令码40 OPP,A指R0,OPP为贮存器地址。将R0寄存器的内容与内存中以OPP为地址单元内的数相乘,其中这个数为-1,目的是求相反数,是求相反数指令。 (5)MUL A,B。指令码50,A指R0,B指R1,将R0寄存器的内容与R1寄存器的内容相乘,结果送R0,是乘法指令。 (6)STA(STA),A。指令码60 STA,A指R0,STA为存贮器地址。将R0寄存器的内容存到以STA 为地址的内存单元中。 (7)OUT BUS,(STA)。指令码70(STA),BUS为数据总线,STA为存贮器地址。将内存中以STA 为地址的数据读到总线上。 (8)JMP OPP。指令码80 。OPP指存贮器地址。程序无条件地转移到OPP(可以是存贮器中不同的地址)所指定的内存单元地址。 其中实现求相反数指令后,可以根据求出的相反数实现减法运算;将求相反数指令中的(OPP)换做寄存器R1加以修改可以实现乘法运算。本次实验的主要目的是实现两个数的相加以及实现求一个数的相反数。 (注:文件素材和资料部分来自网络,供参考。请预览后才下载,期待你的好评与关注。)

计算机组成原理课程设计基本模型机设计与实现

课程设计(大作业)报告课程名称:计算机组成原理 设计题目:基本模型机设计与实现 院系:信息技术学院 班级:计算机科学与技术3班 设计者: 学号: 指导教师: 设计时间: 昆明学院 信息技术学院 课程设计(大作业)任务书

目录 课程设计(大作业)报告 一、课程设计的教学目的 1. 在“微程序控制器的组成与微程序设计实验”的基础上,进一步将其中各单元组成系统构造一台模型计算机。 2. 本实验定义五条机器指令,编写相应的微程序,并上机调试运行,形成整机概念。 课程设计内容设计一台基本模型机,并实现相关的指令。 二、课程设计任务和基本要求 本课程设计以TDN-CM++计算机组成原理教学实验系统为平台设计完成。 1.按给定的数据格式和指令系统,设计一个微程序控制器。 2.设计给定机器指令系统以及微程序流程图,按微指令格式写出微 程序的为指令代码。

3.连接逻辑电路完成启动,测试,编程,测试,效验和运行,并观测运 行过程及结果。 4.将微程序控制器模块与运算器模块,存储器模块联机,组成一台 模型计算机。 5.用微程序控制器控制模型机的数据通路。 6.通过在模型机上运行由机器指令组成的简单程序,掌握机器指令 与微指令的关系,建立计算机整机的概念,掌握计算机的控制机制。 7.按指定的应用项目进行汇编指令格式及功能设计,并设计相应的 机器指令代码,按照模型机数据通路设计实现机器指令功能的微程序.在 PC机上编辑机器指令和微程序,装载代码到TDN-CM++实验系统并运行,实现应用要求。 三、设计任务及分析 (1)设计任务: 从输入设备读取数据X并将其存入以A为间接地址的 内存单元,将X与R 0. 寄存器中的内容Y执行X ⊕,结果送到以B为直接地址的内存单元保存。 (2)分析: A:给R 寄存器直接置入01H. B:从数据开关给间接地址为0CH的内存单元置数,(03H). C:给R 0中的内容取反,结果存在R 中. D:将间接地址0CH中直接地址0EH中的内容(03H)放入DR1中, R 中的内容 放入DR2中,将DR1和DR2种的数进行异或运算,结果放在R 中. E:将R 中的内容存在直接地址为0DH的内存单元中. 四、设计原理 模型机在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微程序。 本实验采用五条机器指令: IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前4位为操作码):

计算机基本模型机设计与实现

计算机基本模型机设计与实现 万红明,李明威 ——湖北省孝感学院计算机科学系 摘要:本科研项目主要在传统模型机的基础上进一步设计且实现模型机的主要组成部件(运算器,存储器,控制器,基本输入输出设备)的基本功能,结合基本硬件资源,充分利用微程序,时序,组合逻辑等控制模型机完成一些基本的指令功能。 关键词:计算机组成原理模型机微指令微程序。 一、模型机的硬件组成 计算机是由运算器、存储器、控制器以及输入输出四大主要单元组成。它们之间通过一条公共的通道进行数据的传递和控制,即总线。其中运算器主要是负责数据的逻辑和算术运算,存储器的任务就是存放我们编写的机器指令(程序)和一般的数据存储,控制器是根据读取内存中的机器指令从而对相应的指令作出分析,继而对我们的计算机发不同的控制信号。输入输出单元则是将我们需要运行的程序写入内存,再由机器运行计算得出结果,予以显示输出。下图为模型机的基本框架: 图(1) 下面我们就对模型机的硬件设计思路作一些简要的介绍(设计的重点是在微程序的设计上,在后面我们将作祥细的说明。 (1)算术逻辑运算单元 我们用的运算器是将两个74LS181进行级联做成一个八位的运算器,并且带有进位功能。当有进位产生时,在高四位的74LS181上的CN+4端输出一个高电平,经D触发器锁存输出并送致LED显示。74LS181有多种组合状态,因此会有多种不同的结果。我们在此只设计实现两个数据相加的功能。它的输入端直接连着两个锁存器(74LS273),它能够将输入端的数据送进锁存器内锁存,进而将数据送进运算器进行算术或逻辑运算。运算器运算后的结果将通过一个三态门(74LS245)后才能送到总线与其它的部件交换数据,设计中三态门的作用是使各部件正常工作而互不影响。 (2)存储单元 存储器芯片选用的是6116(2K x 8),其数据端接至数据总线,地址由地址锁存器(74LS273)给出。数据开关经一三态门(74LS245)连至数据总线,分时给出地址和数据。

一台模型计算机的设计与调试

课程设计题目:一台模型计算机的设计与调试 一.设计目的: 1、融会贯通教材各章的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,加深计算机工作中“时间-空间”概念的理解,从而清晰地建立计算机的整机概念。 2、学习设计和调试计算机的基本步骤和方法,培养科学研究的独立工作能力,取得工程设计和调试的实践和经验。 二.设计任务: 1、根据给定的数据格式和指令系统,设计一台微程序控制的模型计算机。 2、根据设计图,在QUARTUS II环境下仿真调试成功。 3、在调试成功的基础上,整理出设计图纸和相关文件,包括: (1)总框图(数据通路); (2)微程序控制器逻辑图; (3)微程序流程图; (4)微程序代码表; (5)设计说明书; (6)工作小结。 三.设计的数据格式和指令系统: 1、数据格式 数据字规定采用定点整数补码表示法,字长8位,其中最高位为符号位,其格式如下: 2、指令格式 本实验设计使用5条机器指令,其格式与功能说明如下: IN ADD STA OUT JMP 说明:IN指令功能是将数据开关的8位数据输入到R0寄存器。 ADD指令功能是将R0寄存器的内容与内存中地址为A的数相加,结果存放在R0寄存器中。STA指令功能是将R0寄存器中的内容存储到以第二个字为地址的内存单元中。 OUT指令功能是将内存中以第二个字为地址的内存单元中的数据读出到数据总线,并显示。JMP指令功能是程序无条件转移到第二个字指定的内存单元地址。 四、总体设计: 1、总体设计的主要任务是选定所用器件,设计指令流和数据流的数据通路,根据指令系统的要求,总体设计的主要步骤如下: (1)对指令系统中的各条指令进行分析,得出所需要的占领周期与操作序列,以便确定各器件的类型和数量;

实验七基本模型机的设计与实现

实验七基本模型机的设计与实现 一、实验目的 ⒈在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。 ⒉为其定义5条机器指令,并编写相应的微程序,上机调试掌握整机概念。 二、实验设备 Dais-CMH+/CMH 计算器组成原理教学实验系统一台,实验用扁平线、导线若干。 三、实验原理 部件实验过程中,各部件单元的控制信号是以人为模拟产生为主,而本次实验将能在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT (输出)、JMP(无条件转移),其指令格式如下(前三位为操作码): =============================================================== 助记符机器指令码说明 --------------------------------------------------------------- IN R0,SW 0010 0000 数据开关状态→R0 ADD R0,[addr] 0100 0000 XXXXXXXX R0+[addr]→R0 STA [addr],R0 0110 0000 XXXXXXXX R0→[addr] OUT [addr],LED 1000 0000 XXXXXXXX [addr]→LED JMP addr 1010 0000 XXXXXXXX addr→PC =============================================================== 其中IN为单字节(8位),其余为双字节指令,XXXXXXXX为addr对应的二进制地址码。 根据以上要求设计数据通路框图,如图7-10-1所示。系统涉及到的微程序流程见图7-7-3,当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前3位(IR7~IR5)作为测试条件,出现8路分支,占用8个固定微地址单元。 当全部微程序设计完毕后,应将每条微指令代码化,表7-10-1即为将图7-10-2的微程序流程图按微指令格式转化而成的“二进制微代码表”。 下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据总线上,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P(1),通过 节拍脉冲T4的控制以便识别所要求的操作。“指令寄存器”根据指令中的操作码译码 强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。 本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUT DEVICE);另一种是LED块,它作为输出设备(OUTPUT DEVICE)。例如:输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到外部数据总线上,当LDED有效时,将数据打入输出锁存器,驱

8位模型计算机的设计

石家庄经济学院 华信学院 计算机组成原理课程设计报告 题目 8位模型计算机的设计 姓名 学号 班号 4064170801 指导老师关文革尹立洁赵洋 成绩 2009年1月 目录 1. 课程设计目的 52 2. 开发工具选择 52 3. 方案选择 52 4.指令系统设计 52 5. 模型机框图设计 52 6. 指令流程图 52 7. 指令操作时间表(组合逻辑控制器)或者微指令格式(微程序控制器)设计 52 8. 微操作信号综合与优化(组合逻辑控制器)或者微程序(微程序控制器)设计 52 9. VHDL实现 52 10. 调试仿真 52 11. 课程设计回顾总结 52 参考文献 52 附录 52 一、课程设计目的 1、计算机组成原理课程设计的主要任务是让学生通过动脑和动手解决计算机设计中的实际问题。综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机,掌握整机概念,并设计机器指令系统,编写程序,在所设计的模型计算机上调试运行。

2、通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础。 二、开发工具选择 以TEC-CA教学实验系统为平台,采用硬件描述语言 VHDL为设计工具,应用QUARTUSⅡ5.1环境进行大规模集成电路的功能设计仿真。 三、方案选择 应用微程序控制器来实现8位模型计算机的设计。 四、指令系统设计 所要设计的微程序控制器是由七条指令来完成的,即:load,sta,add,sub,and1,nop,jmp。实现功能分别如下:load指令是公操作,实现取数据的功能;sta指令实现存操作;add指令实现加法操作;sub指令实现减法操作;and指令实现与操作; nop指令实现空操作;jmp指令实现无条件跳转操作。 其中add,sub,and1,属于双操作数指令,其指令格式如下图: 目的 源 其中jmp属于转移指令,其指令格式如下图: 转移条件 转移地址 五、模型机框图设计 I/O 六、指令流程图 Addr_bus load_MAR CS R_NW 3 OP

基本模型机设计与实现.

课程设计 课程名称:计算机组成原理 设计题目:基本模型机设计与实现 学院:信息工程与自动化 专业:计算机科学与技术 年级: 学生姓名: 指导教师:王海瑞 日期: 教务处制

课程设计任务书 信息工程与自动化学院计算机专业年级 学生姓名: 课程设计题目:基本模型机设计与实现 课程设计主要内容: 利用所学过的理论知识,特别是微程序设计的思想,写出要设计的指令系统的微 程序。将所设计的微程序在计算机组成原理教学实验系统环境中进行测试,并给出测试思路和具体程序段。最后撰写出符合要求的课程设计报告。 首先要确定所设计计算机的功能和用途,设计中根据功能和用途确定指令系统, 数据的表示格式,位数,指令的编码,类型,需要设计那些指令和寻址方式。确定相 对应指令所包含的微操作以及总体结构设计之间的数据通路结构,在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微指令。 设计指导教师(签字): 教学基层组织负责人(签字): 年月日

目录 一、基本模型机的设计,,,,,,,,,,,,,,,, 4 1、程序设计目的,,,,,,,,,,,,,,,, 4 2、程序设计任务和基本要求,,,,,,,,,,,, 4 3、实验原理,,,,,,,,,,,,,,,,,,,,,,, 5 二、实验内容及步骤,,,,,,,,,,,,,,,8 1.实验内容,,,,,,,,,,,,,,,,,,,8 2.实验步骤,,,,,,,,,,,,,,,,,10 3.实验情况及记录,,,,,,,,,,,,,,,14 三、总结体会,,,,,,,,,,,,,,,,,,15 四、参考文献,,,,,,,,,,,,,,,,,,16 一、基本模型机的设计 1、程序设计目的 (1)掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握信息流和控制信息流的流动过程,

计算机组成原理-简单模型机设计课设

兰州理工大学技术工程学院 计算机组成原理课程设计任务书(09级)题目:模型机设计—1 学生姓名:学号: 班级:计算机科学与技术(2)班指导老师: 一、计算机组成原理课程设计题目简介 该设计要求学成根据计算机组成原理课程所学知识,设计、开发一套简单的模型就算计。 通过对一个简单计算机的设计,以达到对计算机的基本组成、部件的功能与设计、微程序控制器的设计,微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。通过模型机的设计和调试,连贯运用计算机组成原理课程学到的知识,建立计算机整体概念,加深计算机时间与空间概念的理解。 二、计算机组成原理课程设计任务 1、查阅文献资料,一般在5篇以上; 2、以教学实验用模型机为背景,通过调研、分析现有的模型机,建立带有带8位自增、自减指令的整机模型; 3、完成系统编程与测试工作; 4、撰写设计说明书; 5、做好答辩工作。 三、计算机组成原理课设设计的主要内容、功能及指标 1、根据任务要求设计整体系统的方案。 2、存储系统:使用模型机的存储模块,说明存储器的输入输出时序,模块连接方式等。 3、运算器:使用模型机的器件,组成带有片间串行进位8位移位运算功能的运算器。 4、微程序控制器模块:使用教学机的系统,设计微程序控制器。 5、设计模型机指令系统:(含设计微指令格式,微程序流程图,每条指令所对

应的微程序等)。指令系统包括下列指令:IN、OUT、STA、LDA、JMP、BZC、CLR、MOV、 ADD、SUB、ADC、ADT、INC、DEC、SBT、SBC 6、了解并说明教学模型机的输入输出模块。 7、在自己设计的指令系统基础上,编制一个汇编语言小程序并进行调试通过。 8、整机设计分模块进行,说明模块中数据和控制信号的来源、去向、功能、时序、以及模块间数据和控制信号的来源、去向、功能、时序等。 四、完成课程设计报告 1、设计题目、设计任务、实验设备与器材; 2、整体设计方案,设计原理与内容; 3、画出模型机数据通路图; 4、画出设计的模型机微程序流程图和微程序; 5、说明指令系统的格式; 6、说明模块中数据和控制信号的来源、去向、功能、时序、以及模块间数据和控制信号的来源、去向、功能、时序等。 7、调试情况,调试过程中遇到的主要问题,是如何解决的;对设计和编码的回顾讨论和分析;改进设想;经验和体会等; [1]计算机组成原理课程设计提交的成果 1.设计说明书一份,内容包括: 1)中文摘要100字;关键词3-5个; 2)前言; 3) 设计的目的及设计原理; 4)模型机的逻辑结构及框架; 5) 运算器的物理结构; 6)存储器系统的组成与说明; 7)指令系统的设计与指令格式分析; 8) 微程序控制器的逻辑结构及功能; 9)微程序的设计与实现(含微指令格式、后续地址产生方法以及微程序入口地址的形式)

模型机课程设计

哈尔滨理工大学 软件学院 课程设计报告 课程片上计算机系统 题目 CPU模型机设计 班级集成12-1班 专业集成电路设计与集成系统学生张铭 学号 1214020130 指导教师崔林海 2014年07 月02日

索引: 1.课程设计的目的及要求 (3) 2.处理器的设计思想和设计内容 (3) 3.设计处理器的结构和实现方法 (3) 4.模型机的指令系统 (4) 5.处理器的状态跳转操作过程 (4) 6. CPU的VHDL代码 (7) 7. 模型机在Quartus II环境下的应用 (32) 8. 仿真波形 (33) 9. 课程设计的总结 (35)

一.课程设计的目的及要求: 1.目的:了解Quartus II软件的应用,学习Quartus II环境下设计CPU的基本过程;掌握CPU设计代码的含义以及CPU的工作原理;了解CPU与内存RAM 间的连接数据的传输过程;学习在Quartus II环境下建立模型机的具体过程。融会贯通本课程各章节的内容,通过知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识。学习设计和调试计算机的基本步骤和方法,提高使用软件仿真工具和集成电路的基本技能。培养科学研究的独立工作能力,取得工程设计与组装调试的实践和经验。 2.要求:以《计算机组成与设计》书中123页的简化模型为基础,更改其指令系统,形成设计者的CPU,在Quartus II环境下与主存连接,调试程序,观察指令的执行是否达到设计构想。 二.处理器的设计思想和设计内容: 处理器的字长为16b;包括四种指令格式,格式1、格式2、格式3的指令字长度为8b,格式4的指令字长度为16b;处理器内部的状态机包括6个状态。 关于CPU: 操作码5位,一共设计20条指令,主要包括空操作指令、中断指令、加法指令、减法指令、三种逻辑运算指令、循环移位操作指令,数据传输指令,转移类指令,特权指令,取反,取绝对值等等。 关于RAM: 地址线设置成16bits,主存空间为64words。 书中原CPU的主要修改: (1)模型机CPU指令集中的逻辑左移与逻辑右移改成逻辑循环右移与逻辑循环左移。 (2)模型机CPU指令集中的or改成not。 (3)模型机CPU指令的执行流程及状态跳转。 三.设计处理器的结构和实现方法: (指令格式) 格式1:寄存器寻址方式 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

相关文档
最新文档