博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

我的小屋-----I love it

我的小天地,我的心灵之地
  ppzhang.cublog.cn

关于作者
姓名:ppzhang
职业:学生
年龄:20
位置:
个性介绍:
相互学习,相互交流,希望成为好朋友!
|| << >> ||
我的分类


计算机组成原理课程设计----基本模型机的设计与实现(一)

目 录

一、课设目的及内容... 1

二、设计的原理... 2

三、二进制微代码表设计... 11

四、机器指令程序... 15

五、线路连接图... 17

六、微程序流程及说明... 19

七、心得体会... 20

八、参考文献... 22

一、课设目的及内容

课设目的:

1.通过对一个简单模型机的设计与实现,对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。

2.熟悉五条机器指令的功能、操作码、字节数、微程序流程图以及计算机各部件的基本功能,熟练掌握计算机内部信息流、数据流的传送。

3.为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。

4.掌握新增指令及设计机器指令程序转换成十六进制格式文件的内容。

5.掌握按照系统建议的微指令流程图,将每条微指令译成二进制代码。

6.熟悉用微过程控制模型机的数据通路。

7.掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。

8.学习设计与调试计算机的基本步骤及方法。

9.培养学生单片机应用系统的设计能力;

10.            通过单步和连续运行程序, 进一步熟悉机器指令与 微指令之间的关系,并掌握手动和联机读 / 写程序的方法。

11.            使学生较熟练地应用电子线路CAD工具完成单片机系统的硬件                           设计任务;培养学生分析、解决问题的能力;提高学生的科技论文写作能力。

课设内容:

1.熟悉系统数据通路,包括原理框图与实验箱布置

2.根据数据通路实现实验连线

3.熟悉仿真软件的使用

4.熟悉仿真软件支持的程序与微程序格式

5.将ADD指令做适当的修改操作并调试通过

6.对原理图进行相应的修改,实现带移位的运算的模型机。

二、设计的原理

基本模型机实验原理图

 

图(1

 

 

 

基本模型机设计与实现

这个实验的原理图如上图(1)所示。部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应与一个微程序。

本实验采用五条机器指令:IN(输入)、SUB(二进制减法)、STA(存数)、OUT(输出)、JMP(无条件转移)其指令格式如下(前4位为操作码):

 

助记符       机器指令码                             

IN           0000 0000        INPUT DEVICE”中的开关状态 R0

SUB addr     0001 0000   xxxxxxxx      R0 - [ addr ] R0 

STA addr     0010 0000   xxxxxxxx      R0 [ addr ]  

OUT addr     0011 0000   xxxxxxxx      [addr ] BUS 

JMP addr     0100 0000   xxxxxxxx      addr PC

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

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

存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWBSWA为“00”时,按START微动开关,可对RAM连续手动读操作。

存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWBSWA为“01”时,按START微动开关,可对RAM进行连续手动写入。

启动程序:拨动总清开关CLR后,控制台开关SWBSWA置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。

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

 

 

 

 

SWB

SWA

控制台指令

0

0

读内存(KRD

0

1

写内存(KWE

1

1

启动程序(RP

 

 

 

微代码定义如下表所示:

24

23

22

21

20

19

18

17

16

15 14 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

uA5

uA4

uA3

uA2

uA1

uA0

A字段                        B 字段                   C字段

本实验设计机器指令程序如下指令程序。

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

0000  0000       0000  0000       IN      INPUT DEVICE”→R0

//任意输入数据

0000  0001       0001  0000      SUB  [16H]     R0-[16H] R0

0000  0010       0001  0110

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

0000  0100       0000  1011

0000  0101       0011  0000      OUT  [0BH]     [0BH] BUS

0000  0110       0000  1011

0000  0111       0100  0000      JMP  [00H]      00HPC

0000  1000       0000  0000

0000  1001

0001  0110       0000  1000      自定,基于本设计,现减8H8D     

0000  1011                                         求差结果

 

 

当拟定“取指” 微指令时,该微指令的判别测试字段为P1)测试。由于“取指” 微指令是所有微程序都使用的公用微指令,因此P1)测试结果出现多路分支。本机用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台操作为P4)测试,它以控制台开关SWBSWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写。

本系统有两种I/O外部设备,一种是二进制代码开关,它作为输入设备(INPUT DEVICE);另一种是数码块,它作为输出设备(OUTPUT DEVICE)。输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到外部数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码块显示。

 

 

 

 
 
 

控制台流程

 

 

 

发表于: 2008-06-27,修改于: 2008-06-28 16:57,已浏览240次,有评论3条 推荐 投诉


网友评论
网友: hannne 时间:2008-08-15 13:44:23 IP地址:221.10.84.★

网友: wuyangzhi 时间:2008-09-27 19:43:35 IP地址:61.139.105.★
呵呵

网友: wuyangzhi 时间:2008-09-27 19:53:01 IP地址:61.139.105.★
我想请问一下,我在网上找到了你的写的基本模型机的设计与实现(一)和基本模型机的设计与实现(三),可是我找不到基本模型机的设计与实现(二)。请问你写在什么地方的啊,等你消息哦,谢谢,我的QQ565358243
再次感谢!!!

 发表评论