实验指导书.docx
《实验指导书.docx》由会员分享,可在线阅读,更多相关《实验指导书.docx(38页珍藏版)》请在冰点文库上搜索。
实验指导书
计算机组成原理
实验指导书
计算机系郑力军
吉林化工学院
二零一一年五月
目 录
第1章性能特点2
1.1系统功能及特点2
1.2实验系统组成3
第2章实验项目6
2.1时序与启停实验6
2.2存储器和总线实验8
实验1、存储器的写操作10
实验2、读存储器的数据到总线上11
2.3算术逻辑运算单元实验11
实验1、不带进位位逻辑或运算实验14
实验2、不带进位位加法运算实验15
2.4指令部件模块实验17
实验1、PC计数器置数20
实验2、PC计数器加120
实验3、置当前指令寄存器20
2.5模型机的总体设计21
2.5.3.2.1指令类型:
23
2.5.3.2.2操作数寻址方式及编码23
注意事项:
在做单元模块实验前,务必先将CPT-A总线上短8芯扁平电缆及CPT-B上连线板全部拔离实验机。
做实验时,根据实验说明连接相关总线。
可通过PC机软件(LCACPT)中的查看—刷新菜单来观察各寄存器当前值。
第1章性能特点
1.1系统功能及特点
1.1.1提供各个基本功能模块
我们在比较了国内的多家实验机厂商的产品后,发现多数产品不是连线过于繁琐,就是由CPLD来替代所有的硬件。
市场需要一种连线不多,但具有灵活性的实验系统,不同设计方案,不同的连线方法,可以得到不同的结果。
我们所提供的实验机本身就是一个可运行的系统。
整个系统采用功能模块化的设计思路,实验者可单独设计和调试各个功能模块,最终实现一个新的系统,这样可大大减轻实验指导教师的工作量。
整个实验机提供了运算器模块、指令部件模块、堆栈寄存器模块、存储器模块、总线传输模块、微程序模块、启停和时序模块,以及用于调试和观察数据的监控模块。
1.1.2组成结构
整个系统采用总线结构,总线结构具有扩展能力强,结构简单清晰,连线方便快捷等特点。
本实验机的总线分为:
内部、外部地址总线,内部、外部数据总线。
整个系统的各个总线都布有测试孔,以便于测试。
各模块的电源、地、地址数据总线已经按照标准连接完毕,控制信号都按各功能模块的布局引出,实验者可方便的定位各测试点。
1.1.3监控模块
监控模块为实验调试和程序设计带来了相当的便利。
实验者可以通过监控模块来修改微程序和内存中的程序。
为了实验的连贯性,系统中还提供了FLASHMEMORY来保存微程序和程序,掉电时内容不会丢失,实验者可随时保存和读取微程序与程序。
为了使实验者随时观察数据和地址,实验机提供了一块2*16的液晶屏,可同时显示当前地址、当前总线上的数据和当前的微指令和一些关键寄存器的值。
1.1.4操作方式:
单机方式:
整个系统可单独使用,可通过24个按键和液晶来编辑内存和微程序存储器中的数据,在系统运行时可监控所有关键数据。
实验者使用拨动开关来产生二进制码进行微程序和程序的编写。
联机方式:
系统可与PC机相连,PC机上提供了windows界面的操作软件,实验者可在PC机上进行编辑、加载、动态调试等操作。
1.2实验系统组成
本实验机由两部分组成,左边为实验模块部分(CPT-A),主要分布着各个实验单元和监控单元。
实验机的右边为数据输出板(CPT-B),板上分布着24个二进制开关、若干个LED发光二极管、DIP插座,还有1块用于显示当前状况的液晶板。
CPT-A上的控制信号都通过2根扁平电缆连到了CPT-B上。
CPT-A布局图
CPT-B布局图
第2章实验项目
2.1时序与启停实验
2.1.1实验目的
1.掌握时序产生器的组成方式
2.熟悉起停电路的原理
2.1.2实验要求
按照实验步骤完成实验项目,了解程序如何开始、停止运行,用示波器观察时序,并且画出时序图。
2.1.3实验说明
2.1.3.1时序与启停单元的构成:
1、启停电路由1片7474、1片74LS08组成,1个LED(RUN)表示当前实验机的状态(运行LED亮、停止LED灭)。
(如图2-1-1)
2、时序电路由1片74LS157、2片74LS00、4个LED脉冲指示灯(PLS1、PLS2、PLS3、PLS4)组成。
当LED发光时,表示有上升沿产生。
(如图2-1-2)
图2-1-1
图2-1-2
2.1.3.2启停、脉冲单元的原理:
启停原理:
(如图:
2-1-3)
起停电路由1片7474组成,当按下RUN按钮,信号输出RUN=1、STOP=0,表示当前实验机为运行状态。
当按下STOP按钮,信号RUN=0、信号STOP=1,表示当前实验机为停止状态。
当系统处于停机状态时,微地址、进位寄存器都被清零,并且可通过监控单元来读写内存和微程序。
在停止状态下,当HALT上有1个高电平,同时HCK有1个上升沿,此时高电平被打入寄存器中,信号RUN=1、STOP=0,使实验机处于运行状态。
图2-1-3
时序电路:
时序电路由监控单元来控制时序输出(PLS1、PLS2、PLS3、PLS4)。
实验所用的时序电路(如图2-1-4)可产生4个等间隔的时序信号PLS1、PLS2、PLS3、PLS4。
为了便于监控程序流程,由监控单元输出PO信号和SIGN脉冲来实现STEP(微单步)、GO(全速)和HALT(暂停)。
当实验机处于运行状态,并且是微单步执行,PLS1、PLS2、PLS3、PLS4分别发出一个脉冲,全速执行时PLS1、PLS2、PLS3、PLS4脉冲将周而复始的发送出去。
在时序单元中也提供了4个按钮,实验者可手动给出4个独立的脉冲,以便实验者单拍调试模型机。
图2-1-4
2.1.4实验步骤:
●交替按下“运行”和“暂停”,观察运行灯的变化(运行:
RUN亮暂停:
RUN灭)。
●把HALT信号接入二进制拨位开关,HCK接入脉冲单元的PLS1。
(请按下表接线)。
信号定义
接入开关位号
HCK
PLS1孔
HALT
H13孔
●按启停单元中的停止按键,使实验机处于停机状态,置HALT=1。
●按脉冲单元中的PLS1脉冲按键,在HCK上产生一个上升沿的脉冲,把HALT=1打入74LS74,使RUN=1、STOP=0,RUN亮表示当前实验机处于运行状态。
●在实验机处于运行状态时,置HALT=0。
●按脉冲单元中的PLS1脉冲按键,在HCK上产生一个上升沿的脉冲,把HALT=0打入74LS74,使RUN=0、STOP=1,RUN灭表示当前实验机处于停止状态。
因此可通过HALT和HCK来控制实验机的启、停状态。
●按启停单元中的停止按键,使实验机处于停机状态,置HALT=1。
再次按下脉冲单元中的PLS1脉冲按键,使实验机处于运行状态。
此时按监控单元中键盘上的GO/STOP键。
请用示波器观察PLS1、PLS1、PLS3、PLS4的波形(见后图2-5-2)。
2.2存储器和总线实验
2.2.1实验目的
熟悉存储器和总线的硬件电路
2.2.2实验要求
按照实验步骤完成实验项目,熟悉存储器的读、写操作,理解在总线上数据传输的方法。
2.2.3实验说明
2.2.3.1存储器和总线的构成
1、总线由1片74LS245、1片74LS244组成,把整个系统分为内部总线和外部总线。
2片74LS374锁存当前的数据、地址总线上的数据以供LED显示。
(如图2-2-1)
2、存储器采用静态1片RAM(6264)
3、
存储器的控制电路由1片74LS32和74LS08组成。
(如图2-2-2)
图2-2-1
图2-2-2
2.2.3.2存储器和总线的原理
1、总线的原理:
由于本系统内使用8根地址线、8根数据线,所以使用1片74LS245作为数据总线,另1片74LS244作为地址总线(见图2-2-3)。
总线把整个系统分为内部数据、地址总线和外部数据、地址总线,由于数据总线需要进行内、外部数据的交换,所以由BUS信号来控制数据的流向,当BUS=1时数据由内到外,当BUS=0时,数据由外到内。
图2-2-3
2、
由于本系统内使用8根地址线、8位数据线,所以6264的A8~A12接地,其实际容量为256个字节(如图2-2-4)。
6264的数据、地址总线已经接在总线单元的外部总线上。
存储器有3个控制信号:
地址总线设置存储器地址,RM=0时,把存储器中的数据读出到总线上;当WM=0,并且EMCK有一个上升沿时,把外部总线上的数据写入存储器中。
为了更方便地编辑内存中的数据,在实验机处于停机状态时,可由监控来编辑其中的数据。
图2-2-4
2.2.3.3控制信号说明
信号名称
作用
有效电平
BUS
总线方向选择
RM
6264的读允许信号
低电平有效
WM
6264的写允许信号
低电平有效
EMCK
6264的写入脉冲信号
上升沿有效
CR
监控对6264的读允许信号
低电平有效
CW
监控对6264的写允许信号
低电平有效
M/C
监控选择程序空间或微程序空间
2.2.4实验步骤
实验1、存储器的写操作
●把内部地址总线AJ1(8芯盒形插座)与CPT-B板上的二进制开关单元中J3插座相连(对应二进制开关H0~H7),把内部数据总线DJ8与CPT-B板上的J2插座相连(对应二进制开关H8~H15)。
●把EMCK连到脉冲单元的PLS1,WC、RC、BUS接入二进制的开关中。
(请按下表接线)。
信号定义
接入开关位号
EMCK
PLS1孔
WM
H22孔
RM
H21孔
BUS
H21孔
●按启停单元中的运行按钮,置实验机为运行状态。
●二进制开关H0~H7作为地址(A0~A7)输入,置55H(对应开关如下表)。
H7
H6
H5
H4
H3
H2
H1
H0
数据总线值
A7
A6
A5
A4
A3
A2
A1
A0
8位数据
0
1
0
1
0
1
0
1
55H
●二进制开关H8~H15作为数据(D0~D7)输入,置66H(对应开关如下表)。
H15
H14
H13
H12
H11
H10
H9
H8
数据总线值
D7
D6
D5
D4
D3
D2
D1
D0
8位数据
0
1
1
0
0
1
1
0
66H
置各控制信号如下:
H22
H21
WM
RM、BUS
0
1
●按脉冲单元中的PLS1脉冲按键,在EMCK上产生一个上升沿,数据从内部数据总线流向外部数据总线,将数据66H写入地址为55H的存储单元。
实验2、读存储器的数据到总线上
●在做好实验1的基础上,保持电源开启和线路连接不变,只拔掉内部数据总线DJ8与CPT-B板上的J2插座(对应二进制开关H8~H15)的连接。
●按启停单元中的运行按钮,置实验机为运行状态。
●二进制开关H0~H7作为地址(A0~A7)输入,置55H(对应开关如下表)
H7
H6
H5
H4
H3
H2
H1
H0
数据总线值
A7
A6
A5
A4
A3
A2
A1
A0
8位数据
0
1
0
1
0
1
0
1
55H
置各控制信号如下:
H22
H21
WM
RM、BUS
1
0
●按脉冲单元中的PLS1脉冲按键,在EMCK上产生一个上升沿,数据从外部数据总线流向内部数据总线,将存储器55H单元中的内容输出,应该为实验1中的写入的数据66H。
此时数据总线上的指示灯IDB0~IDB7显示结果66H。
2.3算术逻辑运算单元实验
2.3.1实验目的
1、掌握简单运算器的数据传输方式
2、掌握74LS181的功能和应用
2.3.2实验要求
完成不带进位位算术、逻辑运算实验。
按照实验步骤完成实验项目,了解算术逻辑运算单元的运行过程。
2.3.3实验说明
2.3.3.1ALU单元实验构成(如图2-3-1)
1、运算器由2片74LS181构成8位字长的ALU单元。
2、2片74LS374作为2个数据锁存器(DR1、DR2),8芯插座ALU-IN作为数据输入端,可通过短8芯扁平电缆,把数据输入端连接到数据总线上。
3、运算器的数据输出由一片74LS244(输出缓冲器)来控制,8芯插座ALU-OUT作为数据输出端,可通过短8芯扁平电缆把数据输出端连接到数据总线上。
图2-3-1
图2-3-2
2.3.3.2ALU单元的工作原理(如图2-3-2)
数据输入锁存器DR1的EDR1为低电平,并且D1CK有上升沿时,把来自数据总线的数据打入锁存器DR1。
同样使EDR2为低电平、D2CK有上升沿时把数据总线上的数据打入数据锁存器DR2。
算术逻辑运算单元的核心是由2片74LS181组成,它可以进行2个8位二进制数的算术逻辑运算,74LS181的各种工作方式可通过设置其控制信号来实现(S0、S1、S2、S3、M、CN)。
当实验者正确设置了74LS181的各个控制信号,74LS181会运算数据锁存器DR1、DR2内的数据。
由于DR1、DR2已经把数据锁存,只要74LS181的控制信号不变,那么74LS181的输出数据也不会发生改变。
输出缓冲器采用74LS244,当控制信号ALU-O为低电平时,74LS244导通,把74LS181的运算结果输出到数据总线;当ALU-O为高电平时,74LS244的输出为高阻。
2.3.3.3控制信号说明
信号名称
作用
有效电平
EDR1
选通DR1寄存器
低电平有效
EDR2
选通DR2寄存器
低电平有效
DR1CK
DR1寄存器工作脉冲
上升沿有效
DR2CK
DR2寄存器工作脉冲
上升沿有效
S0~S3
74LS181工作方式选择
M
选择逻辑或算术运算
CN
有无进位输入
CCK
进位寄存器的工作脉冲
上升沿有效
ALU-O
74LS181计算结果输出至总线
低电平有效
2.3.4实验步骤
实验1、不带进位位逻辑或运算实验
●把ALU-IN(8芯的盒型插座)与CPT-B板上的二进制开关单元中J1插座相连(对应二进制开关H16~H23),把ALU-OUT(8芯的盒型插座)与数据总线上的DJ2相连。
●把D1CK和D2CK用连线连到脉冲单元的PLS1上,把EDR1、EDR2、ALU-O、S0、S1、S2、S3、CN、M接入二进制开关(请按下表接线)。
信号定义
接入开关位号
D1CK
PLS1孔
D2CK
PLS1孔
EDR1
H8孔
EDR2
H7孔
ALU-O
H6孔
CN
H5孔
M
H4孔
S3
H3孔
S2
H2孔
S1
H1孔
S0
H0孔
●按启停单元中的运行按钮,使实验机处于运行状态。
●二进制开关H16~H23作为数据输入,置33H(对应开关如下表)。
H23
H22
H21
H20
H19
H18
H17
H16
数据总线值
D7
D6
D5
D4
D3
D2
D1
D0
8位数据
0
0
1
1
0
0
1
1
33H
置各控制信号如下:
H8
H7
H6
H5
H4
H3
H2
H1
H0
EDR1
EDR2
ALU-O
CN
M
S3
S2
S1
S0
0
1
0
1
1
1
1
1
0
●按脉冲单元中的PLS1脉冲按键,在D1CK上产生一个上升沿,把33H打入DR1数据锁存器,通过逻辑笔或示波器来测量确定DR1寄存器(74LS374)的输出端,检验数据是否进入DR1中。
●二进制开关H16~H23作为数据输入,置55H(对应开关如下表)。
H23
H22
H21
H20
H19
H18
H17
H16
数据总线值
D7
D6
D5
D4
D3
D2
D1
D0
8位数据
0
1
0
1
0
1
0
1
55H
置各控制信号如下:
H8
H7
H6
H5
H4
H3
H2
H1
H0
EDR1
EDR2
ALU-O
CN
M
S3
S2
S1
S0
1
0
0
1
1
1
1
1
0
●按脉冲单元中的PLS1脉冲按键,在D2CK上产生一个上升沿的脉冲,把55H打入DR2数据锁存器。
●经过74LS181的计算,把运算结果(F=A或B)输出到数据总线上,数据总线上的LED显示灯IDB0~IDB7应该显示为77H。
实验2、不带进位位加法运算实验
●二进制开关H16~H23作为数据输入,置33H(对应开关如下表)。
H23
H22
H21
H20
H19
H18
H17
H16
数据总线值
D7
D6
D5
D4
D3
D2
D1
D0
8位数据
0
0
1
1
0
0
1
1
33H
置各控制信号如下:
H8
H7
H6
H5
H4
H3
H2
H1
H0
EDR1
EDR2
ALU-O
CN
M
S3
S2
S1
S0
0
1
0
1
0
1
0
0
1
●按脉冲单元中的PLS1脉冲按键,在D1CK上产生一个上升沿,把33H打入DR1数据锁存器,通过逻辑笔或示波器来测量确定DR1寄存器(74LS374)的输出端,检验数据是否进入DR1中。
●二进制开关H16~H23作为数据输入,置55H(对应开关如下表)。
H23
H22
H21
H20
H19
H18
H17
H16
数据总线值
D7
D6
D5
D4
D3
D2
D1
D0
8位数据
0
1
0
1
0
1
0
1
55H
置各控制信号如下:
H8
H7
H6
H5
H4
H3
H2
H1
H0
EDR1
EDR2
ALU-O
CN
M
S3
S2
S1
S0
1
0
0
1
0
1
0
0
1
●按脉冲单元中的PLS1脉冲按键,在D2CK上产生一个上升沿,把55H打入DR2数据锁存器。
●经过74LS181的计算,把运算结果(F=A加B)输出到数据总线上,数据总线上的LED显示灯IDB0~IDB7应该显示为88H。
2.3.5实验思考
验证74LS181的算术运算和逻辑运算,在保持DR1=65H、DR2=A7H时,改变运算器的功能设置,观察运算器的输出,填写以下表格来进行分析和比较。
DR1
DR2
S3
S2
S1
S0
M=0(算术运算)
M=1
逻辑运算
CN=1
CN=0
65
A7
0
0
0
0
F=
F=
F=
65
A7
0
0
0
1
F=
F=
F=
65
A7
0
0
1
0
F=
F=
F=
65
A7
0
0
1
1
F=
F=
F=
65
A7
0
1
0
0
F=
F=
F=
65
A7
0
1
0
1
F=
F=
F=
65
A7
0
1
1
0
F=
F=
F=
65
A7
0
1
1
1
F=
F=
F=
65
A7
1
0
0
0
F=
F=
F=
65
A7
1
0
0
1
F=
F=
F=
65
A7
1
0
1
0
F=
F=
F=
65
A7
1
0
1
1
F=
F=
F=
65
A7
1
1
0
0
F=
F=
F=
65
A7
1
1
0
1
F=
F=
F=
65
A7
1
1
1
0
F=
F=
F=
65
A7
1
1
1
1
F=
F=
F=
附74LS181的逻辑
方式
M=1逻辑运算
M=0算术运算
S3S2S1S0
逻辑运算
CN=1(无进位)
CN=0(有进位)
0000
F=/A
F=A
F=A加1
0001
F=/(A+B)
F=A+B
F=(A+B)加1
0010
F=/AB
F=A+/B
F=(A+/B)加1
0011
F=0
F=减1(2的补)
F=0
0100
F=/(AB)
F=A加A/B
F=A加A/B加1
0101
F=/B
F=(A+B)加A/B
F=(A+B)加A/B加1
0110
F=A⊕B
F=A减B减1
F=A减B
0111
F=A/B
F=A/B减1
F=A/B
1000
F=/A+B
F=A加AB
F=A加AB加1
1001
F=/(A⊕B)
F=A加B
F=A加B加1
1010
F=B
F=(A+/B)加AB
F=(A+/B)加AB加1
1011
F=AB
F=AB减1
F=AB
1100
F=1
F=A加A
F=A加A加1
1101
F=A+/B
F=(A+B)加A
F=(A+B)加A加1
1110
F=A+B
F=(A+/B)加A
F=(A+/B)加A加1
1111
F=A
F=A减1
F=A
2.4指令部件模块实验
2.4.1实验目的
1、掌握指令部件的组成方式。
2、熟悉指令寄存器的打入操作,PC计数器的设置和加1操作,理解跳转指令的实现过程。
2.4.2实验要求
按照实验步骤完成实验项目,掌握数据打入指令寄存器IR1、PC计数器的重置,PC计数器自动加1和实现跳转指令的方法。
2.4.3实验说明
2.4.3.1指令部件模块实验的构成:
1、1片74LS374作为指令模块的指令寄存器IR1,另1片74LS374作为地址锁存器IR2。
8芯插座PC-IN作为数据输入端,可通过短8芯扁平电缆把数据输入端连接到数据总线上。
2、2片74LS161作为PC计数器。
3、2片74LS245(同时只有1片输出)作为当前地址的输出。
8芯插座PC-OUT作为地址输出端,可通过短8芯扁平电缆把地址输出端连接到地址总线上。
4、1片74LS153来实现多种条件跳转指令(JZ,JC,JMP等跳转指令)。
图2-4-1
2.4.3.2指令部件模块原理:
(如图2-4-2)
1、指令寄存器IR1(74LS374)的EIR1为低电平并且IR1CK有上升沿时,把来自数据总线的数据打入IR1,IR1的输出就作为本系统内的8位指令I0~I7。
在本系统内由这8位指令可最多译码256条不同的指令,通过编码可对应出这些指令在微程序存储器中入口地址,并且输出相应的微指令。
2