计算机组成原理课程设计

目     录

1课程设计目的......................................... 2

2课程设计设备......................................... 2

3课程设计内容......................................... 2

3.1课程设计原理.................................... 2

3.1.1开关SWA和SWB的定义及数据通路框图.......... 3

3.1.1.1开关SWA和SWB的定义..................... 3

3.1.1.2数据通路框图............................. 3

3.1.2. 微指令格式表及微程序流程图................ 3

3.1.3微指令二进制代码表......................... 6

3.2 实验步骤....................................... 7

3.2.1实验接线图................................. 7

3.2.2 实验步骤:................................ 8

4课程设计总结......................................... 9

4.1每条机器指令的微程序:........................... 9

4.2 课程设计心得、经验教训及注意事项............... 10

4.2.1课程设计心得.............................. 10

4.2.2 经验教训................................. 10

4.2.3注意事项.................................. 10

5实验结果截图........................................ 11

基本模型计算机设计

1课程设计目的

掌握计算机功能模块的原理和关系,建立计算机整机概念

2课程设计设备

TDN-CM+计算机组成原理实验系统,排线若干

3课程设计内容                  

3.1课程设计原理

3.1.1开关SWA和SWB的定义及数据通路框图

3.1.1.1开关SWA和SWB的定义

在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。其中,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成。本试验中设计了三个控制台操作微程序:

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

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

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

上述三条控制台指令用两个开关SWB,SWA的状态来设置,

3.1.1.2数据通路框图

3.1.2. 微指令格式表及微程序流程图

3.1.2.1 微指令格式表

3.1.2.2微程序流程图

系统涉及到微程序流程图,当拟定”取指”微指令时,该微指令的判别测试字段为P(1)测试. 由于”取指”微指令是所有微程序都使用的公用微指令, 因此P(1)的测试结果出现多路分支.控制台操作为P(4)测试, 它以控制台开关SWB, SWA作为测试条件, 出现了3路分支, 占用3 个固定微地址单元.当全部微程序设计完毕后, 应将每条微指令代码化, 微指令二进制代码表, 加入TRY指令的微指令代码内容,流程如下:

3.1.3微指令二进制代码表

微指令代码表

3.2 实验步骤

3.2.1实验接线图

3.2.2 实验步骤:

3.2.2.1输入并检验微指令代码表

  ⑴.编程

①. 将编程开关置为PROM(编程)状态。

②. 将试验板上“START UNIT”中的“STEP”,“STOP”置为“RUN”状态。

③. 用二进制模拟开关置微地址MA5-MA0。

④. 在MK24-MK1开关上置微代码

⑤. 启动时序电路(按动启动按钮“START”), 即将微代码写入到E2 PROM 2816的相应对应的单元中

⑥. 重复C-E步骤,将微指令二进制代码表的微代码写入2816。

⑵.校验

①. 将编程开关置为READ(校验)状态。

②.将试验板的“STEP”开关置为“STEP”状态,“STOP”开关置为“RUN”状态。

③.用二进制模拟开关置微地址MA5-MA0。

④.按动“START”键,启动时序电路,读出微代码,观察显示灯MD24-MD1的状态,检查读出的微代码是否与写入的相同。如果不相同,则将开关置于PROM(编程)状态,重新执行⑴即可。

3.2.2.2 按图接线.

注意: 接线过程中不得有任何错误!

3.2.2.3 按如下步骤操作

⑴.微控器的编程开关拨至RUN,STEP→STEP,STOP→RUN

⑵.将微机与实验箱用串口连接,开机进入WINDOWS2000,进入D:盘的CM+子目录,运行CMP.EXE,进入实验环境,选用COM1口.

⑶.选F2:写入机器指令    

⑷.选F3:写微指令

⑸.选F6:调试机器指令,运行前将CLK开关:1→0→1

①F1_STEP PM:单步运行机器指令

②F2_STEP CM: 单步运行微指令

③F3_EXEC: 连续运行微指令

④F8_RETURN:退出DEBUG

⑹记录实验结果

⑺对比理论计算结果

4课程设计总结

4.1每条机器指令的微程序:

地址         内容           助计符       说明     

0000 0000    0000 0000       IN    “INPUT DEVICE”→R0(从数据开关送入4)

0000 0001    0001 0000       ADD [10H]   R0+[10H] →R0

0000 0010    0001 0000

0000 0011    0010 0000       STA [11H]     R0→[11H]

0000 0100    0001 0001

0000 0101    0011 0000       OUT [11H]     [11H]→BUS

0000 0110    0001 0001

0000 0111    0100 0000       TRY [12H]      R0(S3S2S1S0MCn)[12H] →R0

0000 1000    0001 0010

0000 1001    0010 0000       STA [13H]     R0→[13H]

0000 1010    0001 0011

0000 1011    0011 0000       OUT [13H]     [13H]→BUS

0000 1100    0001 0011

0000 1101    0101 0000       JMP [00H]     [00H]→PC

0000 1110    0000 0000

0000 1111

0001 0000    0010 0110                  

0001 0001    00101010        求和结果(班号加学号)

0001 0010    00000100        班号

0001 0011     01011001        自定义运算的结果

4.2 课程设计心得、经验教训及注意事项

4.2.1课程设计心得

      在实验开始前就要熟读实验预习报告,掌握相关的知识。在设计过程中,要时刻注意细节,只有细心才能把课设做好。接线过程正是考验我们耐心和细心的时候。参照接线图,我们应当分工合作,从左到右,从上到下,有序地接线。

4.2.2 经验教训

接线完毕后,在运行时出现机器指令无法写入内存的问题.经求证认为应该是内存接线存在问题,待确定接线无差错后,将线插紧一些,然后重新运行。结果写入情况良好.一切运行正确,得到正确运行结果。

4.2.3注意事项

在插线过程中,要注意把线插好,否则会出现接触不良,从而导致实验无法进行下去.

 

 5实验结果截图

利用2116设计64K×8位存储器的逻辑原理图

因为2116是16k*1位的存储器,所以最终的64k*8位的存储器是由8*4个2116组成的。

 

第二篇:计算机组成原理课程设计模板

计算机组成原理课程设计

一、      课程目的

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

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

二、      课程内容

1.            课程原理

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

本课程采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件跳转),其指令格式如下(前四位为操作码):

助记符            机器指令码                                          说明

IN                    0000 0000                                     输入设备上的数据送入R0

ADDaddr            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位),其余为双字长指令,xxxxxxxx为addr为对应的二进制地址码。

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

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

存储器写操作(KWE):拨动总清零开关CLR后,控制台开关SWB、SWA为“0 1”时,按START微动开关,可对RAM连续手动写入。

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




根据以上要求设计数据通路框图,如图6---1所示。


 

微代码定义  如表6---1所示。

A字段                               B字段                                   C字段

 


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

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

0000 0000       0000 0000       IN                  Input deviceàr0

0000 0001       0001 0000       ADD [0AH]  R0+[0AH]àR0

0000 0010       0000 1010                            

0000 0011       0010 0000       STA[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       xxxx xxxx                             自定义

0000 1010       0000 0001                            

0000 1011                                                     求和结果


(1)    连接线路

(2)    写程序

采用手动写入的方式:

A.              先将机器指令对应的微代码正确的写入到2816中,由于在微程序控制实验中已将微代码写入E2PROM芯片中,对照表4—2再验证一遍,并且将错误的指令修改过来。

B. 使用控制台KEW的KRD微程序进行机器指令程序的装入和检查。

a.       使编程开关处于“RUN”、TTEP开关处于“STEP”状态、STOP开关处于“RUN”状态。

b.      微地址存器清零。然后使控制台SWB、SWA开关置为“0 1”,按动一次启动开关START,微地址显示灯显示“010001”(八进制21),再按动一次START开关,微地址灯显示“010100”(24),此时数据开关的内容置为要写入的机器指令,连续两次按下START开关后,即完成该条指令的写入。(仔细阅读KWE的流程,不难发现:机器指令的首地址总清后为零,以后每个循环PC自动加1。所以,每次按动START,只有在微地址灯显示“010100”(24)时,才设置内容,直到所有机器指令写完。)

c.       校验,这是写完程序后必须进行的一个操作。先对微地址进行清零(拨动开关CLR 1à0à1)。PC程序计数器清零,然后使控制台开关SWB、SWA位“0 0”,按动启动START,微地址灯将显示“01000”(20),再按动一次START开关,微地址灯显示“010010”(22),第三次按下START,微地址灯显示位“010111”(27),再按START后,此时输出但愿的数码管显示为该首地址中的内容。不断按动START开关,以后每个循环PC会自动加1,可检查出后续单元内容,每次在微地址灯显示位“010000”时,是将当前地址中的机器指令写入到输出设备中显示。

(3)    运行程序

a.       使“START UNIT”中的STEP开关置为“ECEX”状态、STOP开关置为“RUN”状态;

b.      拨动总清零开关(CLR 1à0à1),对微地址和微程序计数器清零。程序首地址为00H。然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机;

c.       停机后,可检查存数单元(0BH)结果是否正确。

课程结果:

(PS:需要写学号的地方填自己滴学号)

相关推荐