当前位置:文档之家› 基本模型机与复杂模型机的设计与实现

基本模型机与复杂模型机的设计与实现

基本模型机与复杂模型机的设计与实现
基本模型机与复杂模型机的设计与实现

一、设计任务:

1、基本模型机设计与实现;

2、在基本模型机设计的基础上设计一台复杂模型机。

二、功能指标和设计要求:

利用所学过的理论知识,特别是微程序设计的思想,写出要设计的指令系统的微程序。设计环境为TDN-CM+计算机组成原理教学实验箱、微机,联机软件等。将所设计的微程序在此环境中进行调试,并给出测试思路和具体程序段。最后撰写出符合要求的课程设计说明书、完成答辩。

1.基本模型机设计与实现

1.1、设计一台简单模型机,要求其指令系统至少要包括五条不同类型指令:如一条输入指令(假设助记符为IN),一条加法指令(假设助记符为ADD),一条存数指令(假设助记符为STA),一条输出指令(假设助记符为OUT)和一条无条件转移指令(假设助记符为JMP);利用设计的模型机设计一个进行两个数求和运算的测试验证程序,验证模型机的功能。

1.2、在1.1的基础上,给基本模型机增加一条加法指令(假设助记符仍为ADD),但是该加法指令的寻址方式与1.1中的加法指令寻址方式不同。利用设计的模型机设计一个进行两个数求和运算的测试验证程序,验证模型机的功能。

2. 在任务1的基础上,设计具有不少于10条指令的复杂指令系统模型机。其中,包含算术逻辑指令、访问内存指令、转移指令、程序控制指令(控制台指令)、输入输出指令、停机指等令。数据的寻址方式要包括直接、间接、变址和相对寻址等多种寻址方式。利用设计的复杂模型机实现两个数的减法运算并判断差得正负,差为正数则输出A,差为负数则输出B,差为零则输出C。设计该测试验证程序,验证模型机的功能。

3、基本模型机和复杂模型机的CPU数据字长为8位,采用定点补码表示。指令字长为8的整数倍。微指令字长为24位。

三、设计步骤:

1、确定设计目标

进行全面深入的模型机设计需求分析,确定所设计计算机的功能和用途。2、确定指令系统

确定数据的表示格式、位数、指令的编码、类型、需要设计哪些指令及使用的寻址方式。确定相对应指令所包含的微操作。

3、总体结构与数据通路与硬件实现

总体结构设计包括确定各部件设置以及它们之间的数据通路结构。在此基础上,就可以拟出各种信息传输路径,以及实现这些传输所需要的微命令。

综合考虑计算机的速率、性能价格比、可靠性等要求,设计合理的数据通路结构,确定采用何种方案的内总线及外总线。数据通路不同,执行指令所需要的操作就不同,计算机的结构也就不一样。

硬件实现基于现有的基本实验箱平台,根据所设计模型机选择必要的元器件,并通过接插件(各种连线等)进行器件连接,组成所设计的模型机硬件系统(物理机)。

4、设计指令执行流程

数据通路确定和硬件实现后,就可以设计指令系统中每条指令所需要的机器周期数。对于微程序控制的计算机,根据总线结构,需考虑哪些微操作可以安排在同一条微指令中,哪些微操作不能安排在同一条微指令中。

5、确定微程序地址

根据后续微地址的形成方法,确定每个微程序地址及分支转移地址。

6、微指令代码化

根据微指令格式,将微程序流程中的所有微指令代码化,转化成相应的二进制代码写入到控制存储器中的相应单元中。

7、组装、调试

7.1、在总调试前,先按功能模块进行组装和分调,因为只有各功能模块工作正常后,才能保证整机的正常运行。首先调试每条微指令功能,再调试每条机器指令功能。

连接所有模块,用单步微指令方式执行机器指令的微程序流程图,当全部微程序流程图检查完后,若运行结果正确,则在内存中装入一段机器指令,进行其他的运行方式等功能调试及执行指令的正确性验证。

7.2、当所有功能模块都调试正常后,进入总调试。根据设计的模型机设计模型机功能测试验证程序,运行程序验证模型机功能。

四、课程设计报告要求:

课程设计报告要求打印,其中的数据通路框图、微程序流程图、实验接线图用VISIO等绘图工具软件绘制或用铅笔工工整整绘制,要求图文清晰,报告内容包括:

(1)封面

(包括:题目、所在系、班级、学号、指导教师及时间等项)

(2)任务书

(3)目录

(目录要层次清晰,要给出标题及页次,目录的最后一项是无序号的“参考文献”)。

(4)正文

正文应按目录中编排的章节依次撰写,要求论述清楚,文字简练通顺,插图清晰,书写整洁,充分体现“设计”的思想。文中图、表及公式应规范地绘制和书写。正文是实践设计报告的主体,具体由以下几部分组成:

1)课程设计题目;

2)课程设计使用的实验设备;

3)课程设计步骤(包括确定所设计计算机的功能和用途、指令系统、总体结构与数据通路、设计指令执行流程、确定微程序地址、微指令代码化、组装、调试、测试验证程序与功能验证情况。)

4)课程设计总结(包括自己的收获与体会;遇到的问题和解决的方法等);(5)附录

附录1:数据通路图

附录2:微程序流程图

附录3:实验接线图

附录4:实验程序及微程序

附录5:参考文献(资料)

五、设计工作量:

(1)作品:设计的最终作品包括硬件和软件两个部分,要求硬件实现正确,能够演示并达到设计指标的要求。每个学生(或小组)在作品完成后,要经指导教师检查,同意拆除后方可拆卸。

(2)论文:严格按上述课程设计说明书的要求撰写和装订。每个学生一份。

六、成绩评定标准:

课程设计的成绩分为:优秀、良好、中等、及格、不及格五个等级。

优秀:完成复杂模型机的设计与实现,指令系统完备有更新扩充。调试成功。文档规范齐全。

良好:完成模型机的设计与实现,指令系统指令种类丰富有一定的更新。调试成功。文档规范齐全。

中等:完成基本模型机的设计与实现,在老师指导下对指令系统有更新。调试成功。文档规范齐全。

及格:完成基本模型机的设计与实现。调试成功。文档规范齐全。

不及格:没有课程设计报告,无故缺勤,不能完成调试者不及格。

七、工作计划:

时间:14周周1~周5(40课时)

讲授:2课时

设计及调试:26课时

设计报告编8课时

答辩:4课时

目录

1、课程设计题目-----------------------------------------------

2、课程设计的目的------------------------------------------

3、课程设计实验设备------------------------------------------

4、课程设计步骤-----------------------------------------------

4.1、所设计计算机的功能和用途------------------------------

4.2、指令系统----------------------------------------------

4.3、总体结构与数据通路与硬件实现------------- ------------------

4.4、设计指令执行流程--------------------------------------

4.5、微指令代码化------------------------------------------

4.6、组装和调试-----------------------------------------

4.7系统测试----------------------------------------

5、课程设计总结-----------------------------------------------

6、附录-----------------------------------------------------------------------------------

附录1:数据通路图---------------------------------------------------------- 附录2:微程序流程图-------------------------------------------------------- 附录3:实验接线图------------------------------------------------------------ 附录4:实验程序及微程序--------------------------------------------------- 附录5:参考文献(资料)-----------------------------------

一、课程设计的题目

基本模型机与复杂模型机的设计与实现

二、课程设计的目的

经过一系列硬件课程如计算机原理的学习及相关实验后,综合应用所学理论知识解决实际设计和应用问题,进行一个综合的系统的实验。具体的来说就是在掌握各部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。培养实际动手能力,进一步提高硬件设计能力。培养实事求是和严肃认真的工作态度。通过设计过程,熟悉和掌握微机系统的硬件设计方法、设计步骤,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力。

三、课程设计使用的实验设备

TDN—CM++计算机组成原理教学实验系统一台,PC机一台,虚拟软件,排线若干。

四、课程设计步骤

4.1 所设计计算机的功能和用途

对于起初设计的基本模型机来说

设计的基本模型机的指令系统包括至少五条不同类型指令:一条输入指令(假设助记符为IN),一条加法指令(假设助记符为ADD),一条存数指令(假设助记符为STA),一条输出指令(假设助记符为

OUT)和一条无条件转移指令(假设助记符为JMP);

利用此模型机完成加法操作。两个操作都能读入被加数,从内存中读取加数,运算后都能保存运算结果,并且都将结果输出。

在基本模型机的基础上,增加至少十条以上的指令十条指令的复杂指令系统模型机。其中,包含算术逻辑指令、访问内存指令、转移指令、程序控制指令(控制台指令)、输入输出指令、停机指令等。数据的寻址方式要包括直接、间接、变址和相对寻址等多种寻址方式。

利用设计的复杂模型机实现一个数的带进位右移和两个数的带进位减法。能读入减数与被减数,从内存中读取两个数,进行进位减法后能保存运算结果,并且将结果输出。

4.2指令系统

本课程设计中的基本模型机采用五条机器指令:IN(输入),OUT (输出),ADD(二进制加法),STA(存数),JMP(无条件转移)。指令格式及说明如下:

序号助记符机器指令码功能说明

1 IN 00000000 "INPUT DEVICE"中的开关状态→R0

2 ADD addr 00010000 ******** R0+[addr]→R0

3 STA addr 00100000 ******** R0→[addr]

4 OUT addr 00110000 ******** [addr]→DR1→LED

5 JMP addr 01000000 ******** [addr]→PC

6 SUB addr 01010000 ******** R0-[addr]→R0

表1 指令系统编码

其中:IN为单字长(8位),其余为双字长指令。********为addr 对应的二进制地址码。

本课程设计中的复杂模型机采用的十六条机器指令,其中包括算术逻辑指令、I/O指令、访问存储器及转移指令和停机指令。

每种类型的指令格式如下:

(A) 算术逻辑指令

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

D7 D6 D5 D4 D3 D2 D1 D0

OP-CODE Rs Rd

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

选中的寄存器(Rs或Rd)R0 R1 R2

寄存器的编码00 01 10

(B) 访存指令及转移指令

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

D7 D6 D5 D4 D3 D2 D1 D0 D7···D0

OP-CODE M OP-CODE Rd D

其中,OP-CODE为操作码, Rd为目的寄存器,D为位移量(正负均可),M为寻址方式,其定义如下:

寻址方式有效地址说明

00 E=D 直接寻址

01 E=(D)间接寻址

10 E=(R

I )+D R

I

变址寻址

11 E=(PC)+D 相对寻址

本模型机规定变址寄存器RI指定为寄存器R2。

(C) I/O指令

输入和输出指令采用单字节指令,其格式如下:

其中,addr=01 时,表示选中“输入单元”中的开关组作为输入设备,addr=10时,表示选中“输出单元”中的数码管作为输出设备。

(D) 停机指令

这类指令只有1条,即停机指令HALT,用于实现停机操作,指令格式如下:

D7 D6 D5 D4 D3 D2 D1 D0

0 1 1 0 0 0 0 0

根据上面提供的指令的格式,可以列出本次课设所需要的复杂模型机指令系统,如下图表一所示:

序号汇编符号指令格式功能说明

1 CLR R

d 0111 00 R

d

0→R

d

2 MOV R

S ,R

d

1000 R

S

R

d

R

S

→R

d

3 ADC R

S ,R

d

1001 R

S

R

d

R

S

+R

d

+Cy→R

d

4 SBC R

S ,R

d

1010 R

S

R

d

R

S

-R

d

-Cy→R

d

5 INC R

d 1011 -- R

d

R

d

+1→R

d

6 AND R

S ,R

d

1100 R

S

R

d

R

S

∧R

d

→R

d

7 COM R

d 1101 00 R

d

R

d

→R

d

D7 D6 D5 D4 D3 D2 D1 D0 OP-CODE addr Rd

8 RRC R S ,R d 1110 R S R d R S 带进位右循环一位,R S →R d 9 RLC R S ,R d

1111 R S R d

R S 带进位左循环一位,R S →R d

10 LDA M,D, R d 00 M 00 R d ,D E →R d 11 STA M,D, R d 00 M 01 R d ,D R d →E 12 JMP M,D 00 M 10 00,D E →PC

13 BZC M,D

00 M 11 00,D 当CY=1或ZI=1时,E →PC

14 IN addr, R d 0100 01 R d addr →R d 15 OUT addr, R d 0101 10 R d R d →addr 16

HALT

0110 00 00

停机

表1 复杂模型机指令系统

微指令格式如下图:

A 字段

B 字段

C 字段

15

14

13

控制信号

12

11

10

控制信号 9

8 7

控制信号

0 0 0 0 0 0 0 0 0 0 0 1 LDRI 0 0 1 RS_G 0 0 1 P1 0 1 0 LDDR1 0 1 0 RD_G 0 1 0 P2 0 1 1 LDDR2 0 1 1 RI_G 0 1 1 P3 1 0 0 LDIR 1 0 0 299_G 1 0 0 P4 1 0 1 LOAD 1 0 1 ALU_G 1 0 1 AR 1

1

LDAR

1

1

PC_G

1

1

LDPC

其中,在基本模拟机中B 字段只用到了RS_G 、ALU_G 和PC_G ,C 字段

微程序

2

4 2

3 2

2 2

1 2

0 1

9 1

8

17 16 1

5 1

4 1

3 1

2 1

1 1

0 9 8 7 6 5 4 3 2 1

控制信号

S 3 S

2 S

1 S

0 M C

N R

D M1

7

M16

A

B

C

uA 5 uA 4 uA 3 uA 2 uA 1

uA0

中只用到了P1测试和P4测试。

4.3总体结构与数据通路与硬件实现

首先,需要确定此次设计需要用到的硬件设备。计算机基本由五大部件组成即运算器,控制器,存储器,输入设备和输出设备。其中运算器和存储器又是CPU的基本组成部分。控制器由程序计数器(PC)--相当于指针、指令寄存器(IR)--存放指令、指令译码器—根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址、时序产生器和操作控制器组成。运算器由算术逻辑运算单元(ALU)、通用寄存器(GR)和状态字寄存器(PSW)--保存状态,防止中断。主存由DRAM读写存储器来实现。控制存储器一般用来存放微程序。

根据上面的概述对寄存器的设置如下:

R0、R1、R2为通用寄存器,8位;

IR为指令寄存器,8位;

PC为程序计数器,8位;

AR为地址寄存器,8位;

DR1、DR2为数据寄存器

数据通路可见附录1的数据通路图。

根据数据通路图和指令的执行流程,可以画出实现整个设计功能的实验原理图,见附录二。然后根据原理图用排线将需要用到的硬件设备准确无误的连接好,随后进行测试和调试。

4.4 设计指令执行流程

根据机器指令系统要求,设计微程序流程图及确定微地址,如附录三所示。当拟定“取指”微指令时,该微指令的判别测试字段为P (1)测试。本机使用指令寄存器的前四位(IR7—IR4)作为测试条件,出现5路分支,占用5个固定的微地址单元。控制台操作P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了三路分支,占用3个固定微地址单元。注意:流程图上的单元地址为8进制。

基本模型机仅用到P(1)和P(4)测试。复杂模拟机相较于基本模拟机多了P2和P3测试。各自功能为:P2测试用下址低2位(uA1~uA0)与指令寄存器的IR3IR2相或得到4路分支;P3测试用于条件转移,它用下址的uA4与(ZI +CY)相或得到2路分支。

4.5微指令代码化

当全部微程序设计完毕后,应将每条微指令代码化,下表即为“二进制微代码表”。

微地址S3~CN RD M17M16 A B P uA5~uA

00 000000 0 11 000 000 100 010000

01 000000 0 11 110 110 110 000010

02 000000 0 01 100 000 001 100000

35 000000 0 01 010 000 000 011110

36 000000 0 01 110 000 010 000100

37 000000 0 01 110 000 010 110000

60 000000 0 01 010 000 000 110001

61 000000 0 01 110 000 010 000100

54 000000 0 11 110 110 110 011101

55 000000 0 11 110 110 110 011111

23 000000 0 11 000 000 000 000001

24 000000 0 00 010 000 000 011000

62 000000 0 01 010 000 000 110011

63 000000 0 11 011 011 000 110100

64 100101 0 11 110 101 000 111100

20 000000 0 11 110 110 110 000011

21 000000 0 11 110 110 110 000101

22 000000 0 11 110 110 110 001101 57 000000 0 11 110 110 110 110101

51 000000 0 00 001 000 000 000001

52 000000 1 10 000 010 000 000001 46 000000 0 11 000 000 000 100110

40 001111 0 11 001 101 000 000001

41 000000 0 11 001 001 000 000001

42 000000 0 11 010 001 000 111010

43 000000 0 11 011 001 000 000011

44 000000 0 11 010 010 000 001101

45 000000 0 11 010 001 000 001110 53 000000 0 11 010 010 000 111011 47 001100 0 11 000 001 000 011010 50 001100 0 11 000 001 000 011011 05 000000 0 01 001 000 000 000001 04 000000 1 01 000 010 001 000001 07 000001 0 11 101 101 110 000001 06 000000 0 11 000 000 011 001001 11 000000 0 11 000 000 000 000001 74 100101 0 11 010 101 010 000100 65 000000 0 01 010 000 000 110111

70 100101 0 11 110 101 000 111001

71 100101 0 11 010 101 010 000100

72 000000 0 11 011 010 000 001010

12 100101 0 11 001 101 101 000001

03 000000 0 11 010 010 000 001100

14 011001 0 11 010 101 101 010101

25 000011 0 11 001 101 000 000001

57 000000 0 11 010 101 000 110000

60 000011 0 11 000 000 101 110001

61 100101 0 11 001 101 101 000001

15 000000 0 11 001 101 000 000001

16 000000 0 11 011 010 000 001111

31 000001 0 11 101 101 110 000001

17 101110 0 11 001 101 101 000001

73 000011 0 11 001 101 000 000001

32 001010 0 11 000 100 000 001011

13 000000 0 11 001 100 000 000001

33 000110 0 11 000 100 000 001011

72 000000 0 11 001 100 000 000001

27 000001 1 10 000 101 000 010000

30 000001 1 01 000 101 000 010001

4.6组装与调试

本设计采用的方法是联机读/写程序。

按照规定格式,将机器指令及微指令二进制表编辑成十六进制格

式文件,如附录四所示。

打开电源,运行联机软件的CMP.EXE,根据所使用的PC微机串口选择键入1或2,测试通过后,进入主菜单。

进入主菜单后,使用联机软件中的【转储】--【载入】功能,将上面的十六进制格式文件装入实验系统中的主存和存储控制器中。

运行程序

①单步运行程序

A.使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。

B.拨动总清开关CLR(0→1),微地址清零,PC计数器清零,程序首地址为00H。

C.单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。

D.当运行结束后,可检查存数单元(0B)以及输出数码快中的结果是否和理论值一致。

②连续运行程序

A.使“STATE UNIT”中的STEP开关置于“EXEC”状态,STOP开关置为“RUN”状态。

B.拨动CLR开关,清微地址及PC计数器,按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。

C.停机后,可检查存数单元(0B)以及输出数码快中的结果是否正确。

③若联机运行程序时,按下“F6”进入调试界面进入DEBUG调试界面,总清开关CLR(0→1)清零后,程序首地址为00H,按相应功能键即可联机运行、调试程序。执行完一条指令后,计算机会根据指令的执行过程在屏幕上画出数据流图,有效的控制信号用高亮显示,并将下一条微指令显示在屏幕下方,可以直接地观察到指令的执行过程。

1:单步执行机器指令。一条机器指令对应一段微程序,每执行一条微指令,计算机同时显示数据流图,执行完整条机器指令后停机,此时可以再键入“F1”继续单步下一条机器指令。

2:单步微程序。每按动一次“F2”,单步执行一条微指令,同时显示数据流图。

3:连续运行。按下“F3”后,系统开始连续运行程序,同时显示数据流图。此时按下任意键可终止程序运行。注意,按任意键有可能不会立即终止程序运行,只有当一条机器指令运行完后,此命令才有效。

4:返回主菜单,按ESC键也可完成。

当通路图中数据流的流向与之前所设计的机器指令应该执行的流程顺序一致时说明硬件与软件实现的良好。

4.7系统测试

设计微程序如下:

基本模型机采用5条机器指令:IN,ADD,STA,OUT,JMP

地址(二进制)内容(二进制)助记符说明

0000 0000 0000 0000 IN R0 “INPUT DEVICE(班号)”→37 0000 0001 0001 0000 ADD [0AH],R0 R0+[0AH] →5C

0000 0010 0000 1010

0000 0011 0010 0000 STA R0,[0BH] R0→[0BH]

0000 0100 0000 1011

0000 0101 0011 0000 OUT [0BH] [0BH] →LED

0000 0110 0000 1011

0000 0111 0100 0000 JMP 00H 00H→ PC

0000 1000 0000 0000

0000 1001

0000 1010 0010 0101

0000 1011 求和结果

复杂模型机采用 8条机器指令:IN,RRL,OUT,IN,SBC,STA,LAD,OUT

地址内容助记符说明

00 44 IN 输入81

01 E0 RRC 带进位循环右移

02 58 OUT 输出40,CY灯灭

03 45 IN 输入1F

04 A1 SBC 带进位减

05 05 STA R1→(E)

06 11 LDA (E)→RS

07 59 OUT 输出20

载入的机器指令和微指令见附录四。

五课程设计总结

本次课程设计小组由四人组成,在设计的过程中我们相互合作,勤于思考,大胆设想,积极尝试,终于克服了种种困难,完成了目标。在设计中我们遇到的问题归纳起来有三方面。

(1)在设计基本模型机时,我们设计的是三个数相加。但是试的时候一直出错,存数单元(0B)与理论值不相符。为了解

决这个问题,我们翻阅了很多资料,又对我们所编写的机器

指令和微指令逐个分析,最终发现第二个ADD指令指代的自

定加数的地址不对,所以才导致调试的出错。这个问题虽然

是个小问题,但从中可以开出当时我们对机器指令掌握还不

够熟练,全面。

(2)在设计复杂模型机的时候,我们设计的是间接寻址的两个数相加,可是通路图中两个加数到最后显示的是FF。开始

时我们一直不明白问题出在哪里,硬件测试完全正确,指令

也正确,后来经过同学的点播我们发现REG UNIT里的

LDR0和MICRO-CONTROLLER里的LDRi没有连。而LDRi

为打入工作寄存器信号的译码器的是能控制位。如果没有将

其连入,DR1和DR2的读取就会发生紊乱。

(3)我们还设计了带进位的循环右移和带进位的减法,我们想把它的结果从数码块中输出,就加了一条OUT指令,可是

不管怎样修改就是无法输出。最终老师给我们进行了详细的

解释和深刻的剖析。我们明白了要想把RD里的数输出首先要

保证RD里面有数。而之前我们已经把RD里的数通过数据总

线送给PC了。为了输出,经过反复推敲我们选择了另外一条

道路,借鉴基本模型机的输出先把数送到主存,再从主存中

取出输出到数码管。这次数码管可以真正的显示正确数据了。

这次的课程设计虽然只有短短的五天,但我们却受益颇多。

第一,我们对计算机组成的硬件和软件部分有了深入的了解,对课本上讲解的知识能够融会贯通,对各个组成部件,对计算机处理指令的流程等有了更加详细的认识。第二,改变了我们思考问题看待问题的角度,提高了我们的创新能力。此次课设我们自主设计,有足够的空间大胆设想我们想要实现的功能,并利用所学的知识将其应用与实践。随让过程比较困难,有时还会停滞不前,但最终出来的结果却让我们有极大的满足感和成就感。

第三,增强了我们的团队合作意识。此次课设我们组四个人,团结合作,分工明确,一人有问题,全体协商,提高了工作的效率,也让我们不断的从对方的身上学习他们思考问题和解决问题的方式,思想。来弥补自身的不足,完善自己。

第四,只有不断的实验才会走向成功。此次课设我们遇到了很多困难,但我们从来没有放弃,而是反复推敲反复思考反复演示,才有了后来的成功。这也让我明白了一个道理只有多操作才能从中发现问题,及时解决问题,才能迈向成功。

附录一

数据通路图

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";

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

基本模型机的设计与实现课程设计报告 https://www.doczj.com/doc/5517602116.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号“取址”微指令,启动程序运行。

永磁同步电机控制系统仿真模型的建立与实现资料

永磁同步电机控制系统仿真模型的建立与 实现

电机的控制 本文设计的电机效率特性如图 转矩(Nm) 转速(rpm) 异步电机效率特性 PMSM 电机效率特性 本文设计的电动汽车电机采用SVPWM 控制技术是一种先进的控制技术,它是以“磁链跟踪控制”为目标,能明显减少逆变器输出电流的谐波成份及电机的谐波损耗,能有效降低脉动转矩,适用于各种交流电动机调速,有替代传统SPWM 的趋势[2]。 基于上述原因,本文结合0=d i 和SVPWM 控制技术设计PMSM 双闭环PI 调速控制。其中,内环为电流环[3],外环为速度环,根据经典的PID 控制设计理论,将内环按典型Ⅰ系统,外环按典型Ⅱ系统设计PI 控制器参数[4]。 1. PMSM 控制系统总模型 首先给出PMSM 的交流伺服系统矢量控制框图。忽略粘性阻尼系数的影响, PMSM 的状态方程可表示为 ??????????-+????????????????????----=??????????J T L u L u i i P J P L R P P L R i i L q d m q d f n f n m n m n m q d ///002/30//ωψψωωω& && (1) 将0=d i 带入上式,有 ???? ??????-+??????????? ??? ??--=????? ?????J T L u L u i J P P L R P i i L q d m q f n f n m n m q d ///02/3/0ωψψωω& && (2) 转 矩 (N m )转速 (n /(m i n )) 效率 转速 (rpm) 转矩 (N m )

基本模型机设计及实现

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

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

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

计算机组成—复杂模型机方案

课程设计:计算机组成原理 题目名称:复杂模型机的设计 姓名: 学号:1108020184 1108020185 班级:网络工程1101班 完成时间:2018年1月6日1设计目的:建立清晰完善的整机概念; 学习设计与调试计算机的基本方法;培养严谨的科研作风和独立工作能力。 2设计任务: 综合运用所学的计算机原理知识,按给定的指令系统分和数据格式,在所提供的设备范围内,设计一台字长八位的由微程序控制器来控制的模拟计算机。设计并实现较为完整的八位模型计算机。 设计微程序控制器的逻辑原理电路图;

设计微地址转移的逻辑电路图; 设计微程序流程图; 设计说明书。 3设计指标: 字长八位; 时钟源MF=QB=1us 内存容量不得小于2 8; 指令系统不得小于十四条。要求算术逻辑指令七条、访问内存和控制指令四条、输入输出指令两条、其他指令一条。 4设计说明: 4.1数据格式 模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下: 其中,第7位为符号位,数值的表示范围是:-1乞X <1 模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。 [1]算术逻辑指令 设计九条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址, 其格式如下: 其中,OP-COD为操作码,Rs为源寄存器,Rd为目的寄存器,并规定: [2]访存指令及转移指令 模型机设计两条访问指令,即存数(STA>、取数(LDA>,两条转移指令, 即无条件转移(JMP>结果为零或有进位转移指令(BZC>。其格式如下:

D 其中,OP-CODE^操作码,Rd为目的寄存器,D为位移量(正负均可>, M为寻址方式,其定义如下: 本模型机规定变址寄存器RI指定为寄存器R2 [3]I/O 指令 输入v IN)和输出<OUT)指令采用单字节指令,其格式如下: 其中,addr=01时,表示选中“输入单元”中的开关组作为输入设备, addr=10时,表示选中“输出单元”中的数码管作为输出设备。 [4]停机指令 这类指令只有1条,即停机指令HALT用于实现停机操作,指令格式如 4. 2系统指令 本模型机共有1 4条基本指令。其中,算术逻辑指令6条,移位指令2条,访问内存指令和程序控制指令3条,输入输出指令2条,其他它指令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的微程序流程图按微指令格式转化而成的“二进制微代码

频分多址技术的建模设计及仿真

《电子信息系统仿真》课程设计届电子信息工程专业班级 题目频分多址技术的建模设计与仿真 姓名学号 指导教师职称 二О一年月日

引言频分多址是将通信的频段划分成若干等间隔的信道频率,每对通信的设备工作在某个分配(或者是指定)的信道上,即不同的通信用户是靠不同的频率划分来实现通信的,称为频分多址。早期的无线通信系统,包括现在的无线电广播、短波、大多数专用通信网都是采用频分多址技术来完成的。频分多址通信设备的主要技术要求是:频率准确、稳定,信号占用的频带宽度在信道范围以内。 频分多址技术FDMA是数据通信中的一种技术,即不同的用户分配在时隙相同而频率不同的信道上。按照这种技术,把在频分多路传输系统中集中控制的频段根据要求分配给用户。同固定分配系统相比,频分多址使通道容量可根据要求动态地进行交换。 在FDMA系统中,分配给用户一个信道,即一对频谱,一个频谱用作前向信道即基站向移动台方向的信道,另一个则用作反向信道即移动台向基站方向的信道。这种通信系统的基站必须同时发射和接收多个不同频率的信号,任意两个移动用户之间进行通信都必须经过基站的中转,因而必须同时占用2个信道(2对频谱)才能实现双工通信。关键字:通信系统频分多址滤波器解调 一《频分多址系统建模与仿真》课程设计的目的通过对频分多址系统的建模与仿真,实现了3路信号的频分复用并得到了仿真结果。综合运用本课程的理论知识进行频谱分析以及滤波器设计,通过理论推导出相应的结果,并用MATLAB作为编程工具进行计算机实现,从而复习巩固课堂所学的论知识,提高了对所学知

识的综合应用能力,并从实践上实现了对数字信号的处理。 二课程设计内容及要求 2.1设计内容: 在Matlab 环境中,利用编程方法对FDMA通信模型进行仿真研究。 2.2 设计要求 用麦克风进行声音的录制,录制3路不同人的语音信号,并对录制的信号进行采样;画出采样后语音信号的时域波形和频谱图接着画出复用信号的频谱图。设计合适数字滤波器,并画出带通滤波器的频率响应。再进行解调,画出解调后3路信号各自的频谱图。最后通过选择合适的低通滤波器恢复出各原始语音信号,从而实现FDMA通信传输。画出低通滤波器的频率响应,恢复信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化。回放语音信号。2.3 模型分析

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

课程设计(大作业)报告课程名称:计算机组成原理 设计题目:基本模型机设计与实现 院系:信息技术学院 班级:计算机科学与技术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[ 任务描述] (2) 1.1题目名称 (2) 1.2要求 (2) 1.3实验目的 (2) 2 [设计设备] (2) 3 [设计原理和方法] (2) 3.1设计原理 (2) 3.1.1数据格式 (2) 3.1.2指令设计 (2) 3.1.3指令格式 (3) 3.1.4指令系统 (4) 3.2设计依据 (5) 3.2.1详细设计 (5) 3.3.2实验操作 (7) 4 [代码清单] (8) 4.1微程序流图 (8) 4.2机器指令代码 (9) 4.3微程序代码 (10) 5 [设计运行结果分析] (12) 5.1实验结果: (12) 5.2出错情况: (12) 6 [设计小结] (12) 7[致谢] (13) 8[参考文献] (14) 附录一:数据通路框图 (15) 附录二:复杂模型机实验电路连线图 (16)

题目五复杂模型机的组成与程序运行 1[ 任务描述] 1.1 题目名称:复杂模型机的组成与程序运行 1.2 要求:基于TD-CMA计算机组成原理教学实验系统,设计一个复杂计算机整机系统—模型机,分析其工作原理。根据模型机的数据通路以及微程序控制器的工作原理,设计完成以下几条机器指令和相应的微程序,输入程序并运行。 IN R0,00H ;从端口00H读入计数初值到R0 LDI R2,50H ;读入数据始地址 LDI R1,00H ;累加和初值00H START: LAD 10,00H,R3 ;从MEM 读入数据送R3,变址寻址,偏移量为00H ADD R1,R3 ;累加求和 INC RI ;变址寄存加1,指向下一数据 LDI R3, 01H ;送立即数入R3 SUB R0, R3 ;R0-R3 ->R0,与上一条指令一起实现DEC R0 BZC RESULT ;为0 则跳转 JMP START ;跳转至START RESULT: OUT 40H,R1 ;和在OUT 单元显示 HLT ;停机 50H、51H、52H、53H、54H单元内容分别为02H、03H、04H、05H、06H。 1.3 实验目的:该实验通过从端口00H读入一个计数初值,以该计数初值为基准从MEM 的50H单元开始的连续的计数初值个数的累加和,最后将求得的累加和从端口40H输出显示。 2 [设计设备] 实验设备:西安唐都科教仪器公司生产的TD-CMA 实验系统一套,PC机一台,数据连接导线若干,电源。 3 [设计原理和方法] 通过已经学过的计算机组成原理知识,在TD-CMA实验系统上设计一个复杂模型机。 3.1 设计原理 3.1.1数据格式 模型机规定采用定点补码表示法表示数据,字长为8位,8 位全用来表示数据(最高位不表示符号),数值表示范围是: 0≤X≤28-1。 3.1.2指令设计 该复杂模型机设计包含运算类指令、控制类指令、数据传输类指令三大类指令。 运算类指令仅用到了算术运算,算术运算设计有3 条运算类指令,分别为:ADD(两寄存器值加法)、INC(寄存器值自加1)、SUB(两寄存器值减法)。所有运算类指令都为单

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

实验七基本模型机的设计与实现 一、实验目的 ⒈在掌握部件单元电路实验的基础上,进一步将其组成系统地构造一台基本模型计算机。 ⒉为其定义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有效时,将数据打入输出锁存器,驱

基本模型机设计与实现.

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

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

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

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

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

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

兰州理工大学技术工程学院 计算机组成原理课程设计任务书(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)微程序的设计与实现(含微指令格式、后续地址产生方法以及微程序入口地址的形式)

复杂模型机的组成与程序运行课程设计_

内蒙古师范大学计算机与信息工程学院《计算机组成原理》 课程设计报告 题目: 复杂模型机的组成与程序运行(3)

1 任务描述 设计题目名称:复杂模型机的组成与程序运行(3) 要求:基于EL_JY_Ⅱ8型计算机组成原理实验系统,设计一个简单的计算机整机系统—模型机受到实验系统的限制,硬件部分基本不做改动。在充分分析和研究实验系统的组成及工作原理的基础上,确定模型机的数据通路结构,根据指令和微指令的译码情况,设计机器指令格式和微指令格式(不能超出硬件的限制),设计完成以下几条机器指令和相应的微程序,输入程序并运行跟踪观察结果。指令有四种不同的寻址方式可选择。 IN 01,R2 “D-INPUT”中的开关状态->R2 COM R2 R2->R2 RLC R2,R0 CY ->R2, R2->R0 MOV R2,R0 R2->R0 AND 00,0DH,R0 R0 * [0DH] -> R0 ;直接寻址方式 STA 10,0EH,R2 R2 ->[0EH+R1] ;变址寻址方式 JMP 00,01H 01H -> PC ;直接寻址方式 HALT 0DH、0EH单元内容分别为02H、03H。 2 设计设备 EY-JY-II8型计算机组成原理实验系统一套,排线若干。 3 设计原理和方法 3.1 设计原理 3.1.1 数据格式: 本实验计算机采用定点补码表示法表示数据,字长为8位,其格式如下: 其中第7位为符号位,数值表示范围是:-1≤X<1 3.1.2 指令格式: 本实验中的三条算术逻辑指令COM、RLC、MOV用单字节表示,寻址方式采用寄存器直接寻址其格式如下: 其中OP-CODE为操作码,rs为源寄存器,rd为目的寄存器,并规定: 本实验中的两条访问指令,即存数STA、与运算AND,一条转移指令,即无条件转移JMP,指令格式如下: 其中OP-CODE为操作码,rd为目的寄存器地址(LDA、STA指令使用),D为位移量(正负均可),M为寻址模式,其定义如下:

模型机课程设计

哈尔滨理工大学 软件学院 课程设计报告 课程片上计算机系统 题目 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

基本模型机设计与实现 实验报告

____学院____专业_____班______组、学号______ 姓名_____协作者_____ 教师评定_____________ 实验题目_基本模型机设计与实现______________________ 1.实验目的与要求: 实验目的: 1.在掌握部件单元电路实验的基础上,将微程序控制器模块与运算器模块、存储器模块组合成一起,组成一台基本模型计算机。 2.用微程序控制器来控制模型机的数据通道。 3.通过CPU运行五条机器指令组成的简单程序,掌握机器指令与微指令的关系,建立利用指令控制整机(输入、输出、运算、存储系统)的概念。 实验要求: 记录程序运行过程的数据和结果,按记录填写答题框,完成练习操作题,观察程序的执行过程并记录运行结果。 2.实验方案: 1.实验连线。 2.试验程序。 3.修改和编写试验仪RAM和ROM数据的方法。 4.结果测试。 3.实验结果和数据处理: 练习操作题记录表:(注意:题目不用写入实验报告)

4.结论 1.每条指令执行要分三步,第一步是取指令,由01、02微指令实现;第二步是判别指令,判别取的是什么指令,转到相应的分支去,由P (1)信号参与控制;第三步是具体执行指令,具体执行相应分支的每一条微指令。 2.每次运行前,都要拨动CLR开关清零(1→0→1)。清零后,微地址显示灯应为000000。 3.窗口显示的EX1的源文件,包括机器指令程序和微指令程序的微代码,$P开头是机器指令程序,$M开头是微指令程序的微代码. 5.问题与讨论及实验总结 如何修改试验仪的RAM和ROM的数据? 答:先选中要修改的该层,把该地址单元的内容全部输入,等光标自动移到下一个地址单元时才完成对该地址单元内容的修改。接着使用该菜单栏中的“调试”菜单下的“刷新数据”或F5热键来对“程序RAM”“微指令ROM”进行刷新,把电脑上的数据传到实验仪中。 6.思考题:

计算机组成原理课程设计_复杂模型机

计算机与信息学院 计算机组成原理 课程设计报告 专业班级 学生姓名及学号 合作者 实验指导教师 实验地点 2011~2012 学年第1 学期

一、课程设计目的: 本课程设计是《计算机组成原理》课程之后开设的实践环节课程。通过本课程设计,使学生进一步加深对计算机原理系列课程相关内容的理解,掌握CPU设计的基本方法和计算机系统的组成原理,进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力;锻炼计算机硬件的设计能力、调试能力;培养严谨的科学实验作风、良好的工程素质及团队协作精神,为今后的工作打下基础。 基于计算机组成原理教学实验系统设计并实现一个具有16条机器指令、采用微程序控制器的8位计算机。 二、课程设计要求: 根据设计课题要求,给出模型机的设计方案(包括指令系统和硬件结构)。画出所设计计算机的硬件连接图,针对所设计的指令系统编写出相应的微程序。对所设计的计算机进行安装与调试。编写测试程序,对系统进行验证。编写课程设计报告。 (1)BZC—>NBZC (2)INC Rd—>INC Rs,Rd (3)RRC Rd—>RR Rs,Rd (4)RLC Rd—>RLC Rs,Rd 指令格式和指令系统 数据格式 模型机规定采用定点补码表示数据,且字长为8位,其格式如下: 其中第7 指令格式 模型机设计四大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。 ⑴算术逻辑指令 设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下: 其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:

9条算术逻辑指令的名称、功能和具体格式见表7-12-1。 ⑵ 访问指令及转移指令 模型机设计2条访问指令,即存数(STA )、取数(LDA ),2条转移指令,即无条件转移(JMP )、结果为零或有进 位转移指令(BZC ) 其中“0 0 M ”为源码段,2OP-CODE 为目的码段(LDA 、STA 指令使用)。D 为十六位地址段(低八在前,高八随后),M 为源寻址模式,其定义如下: ⑶ I/O 指令 输入(IN )和输出(OUT ⑷ 停机指令 指令格式如下: HALT 指令,用于实现停机操作。 指令系统 本模型机共有16条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,

基本模型机的设计与实现

南京晓庄学院 信息工程学院 计算机组成原理课程 实 验 报 告 实验名称:基本模型机的设计与实现 年级专业班级:14 级计算机专业专本1班班级 学号:14131521 姓名:殷宇翔 学号:姓名: 学号:姓名: 时间:2016 年12 月10 日

一、实验目的、要求: 1、在掌握部件单元电路实验的基础上,进一步将其组成系统以构造一台基本模型实验计算机。 2、设计五条机器指令,并编写相应的微程序,具体上机调试,掌握整机软硬件组成概念。 二、实验仪器设备、器件及环境: 三、实验方法、原理: 部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,实验计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 ⑴有关微控制器部分在前一实验中已详细介绍 ⑵主存储器的读、写和运行 为了向主存储器RAM中装入程序或数据,并且检查写入是否正确以及能运行主存储器中的程序,必须设计三个控制操作微程序。 ·存储器读操作:拨动总清开关后,置控制开关SWC、SWA为“0 0”时,按要求连线后,连续按“启动运行”开关,可对主存储器RAM连续手动读操作。 ·存储器写操作:拨动总清开关后,置控制开关SWC、SWA为“0 1”时,按要求连线后,再按“启动运行”开关,可对主存储器RAM进行连续手动写入。 ·运行程序:拨动总清开关后,置控制开关SWC、SWA为“1 1”时,按要求连线后,再按“启动运行”开关,即可转入到第01号“取址”微指令,启动程序

三维模型参数化设计与数控加工仿真的实现

三维模型参数化设计与数控加工仿真的实现 作者:恽志东 随着机械制造行业自动化程度 的提高,产品生产的竞争日趋激 烈,人们借助于CAD/ CAM技术的卓越功能来实现产品的辅助设计与辅助制造功能,从而大大缩短产品的生产周期和降低产品的生产成本。SolidWorks是基于Windows平台的主流三维设计软件,被广泛应用于各行业的产品设计,它采用基于特征的参数化模型系统,为产品的设计、分析和制造的一体化提供了平台。Mastercam是美国CNC Software公司开发的CAD/CAM一体化软件,它对硬件的要求不高,操作灵活,具有良好的性价比,特别在CNC编程方面快捷方便,广泛应用于中小型制造企业。在实际工作中,设计人员采用SolidWorks软件进行零件设计,再将零件模型导入Mastercam软件编制零件刀具路径,自动生成数控代码,极大地提高了工作效率,有效保证了零件加工的精度。笔者以圆柱凸轮为例,详细阐述三维模型的参数化设计到自动编程、加工仿真的实现过程。 1 加工零件与工艺分析 图1所示为圆柱凸轮零件图,圆柱直径d=254mm,圆柱高H=203.20mm,内孔半径 r=80.8mm,滚子直径dt=30.25ram,凸轮槽深v=20.65mm。 圆柱凸轮槽是环绕在圆柱面上的等宽槽,加工时刀具沿圆柱凸轮圆周表面铣削的范围往往大于360°,宜采用四轴或带有数控回转台的三坐标立式数控铣床进行加工。圆柱凸轮槽的底部在每一个截面上通常是等深的,根据槽宽及形状选用直径为20mm圆柱立铣刀。圆柱

凸轮铣削加工前通常是一个实心的圆柱体,要经过开槽-粗加工-半精加工-精加工等工序。 由于凸轮槽宽度值大于实际刀具直径,除粗加工外,其余工序采用非等径加工方式,刀位轨迹相对粗加工路径向两侧偏移值为±5.125mm;其中半精加工刀具步进间距2mm,2次走刀;精加工刀具步进间距1.125mm,1次走刀;共分6次走刀完成(单侧3次走刀)。 2参数化三维设计 2.1 CamTrax插件功能 CamTrax是应用于SolidWorks软件中的一个windows界面的第三方软件,用于帮助设计者精确、有效地构建各种类型的凸轮实体模型。CamTrax插件的主要功能: (1)提供直线、盘形、圆柱等多种凸轮类型及主运动方式(顺时针、逆时针),推杆与凸轮保持接触形式可选沟槽式、外廓接触、内廓接触,从动件可选对心直动推杆、偏心直动推杆、摆动推杆。 (2)可自定义从动件运动规律,载荷数据。可选的凸轮运动规律有:①凸轮不动;②筒谐运动规律;③正弦加速度;④修正正弦加速度;⑤修正梯形加速度;⑥正弦一恒速复合运动规律;⑦正弦一简谐复合运动规律;⑧八阶多项式运动规律;⑨外部数据文件(txt格式),两列:第一列为凸轮角位移,增量为0.1°,第二列为对应的从动件位移。可以输入的载荷数据有:①从动件弹性模量,凸轮弹性模量;②重量加速数据,外力作用数据;③凸轮转速;④弹簧数据。(3)运动分析结果可以输出到EXCEL文件中。 2.2凸轮实体模型的构建 在CamTrax软件中设置圆柱凸轮的基本参数及定义从动件运动规律参数后,SolidWorks 软件利用曲线功能自动绘制凸轮理论轮廓曲线及凸轮实际轮廓曲线,最后通过切除放样操作生成凸轮的三维实体。 2.3零件模型的数据交换 在SolidWorks中完成凸轮实体模型设计后,需要将实体零件导入到Mastercam中进行数控加工的刀具路径设置。通过SolidWorks工具栏中的Mastercam Direct插件,使得用户

相关主题
文本预览
相关文档 最新文档