资源描述
. .
实验1 通用存放器实验
一、实验目的
1. 熟悉通用存放器的数据通路。
2. 了解通用存放器的构成和运用。
二、实验要求
掌握通用存放器R3~R0的读写操作。
三、实验原理
实验中所用的通用存放器数据通路如下列图所示。由四片8位字长的74LS574组成R1 R0〔CX〕、R3 R2〔DX〕通用存放器组。图中X2 X1 X0定义输出选通使能,SI、XP控制位为源选通控制。RWR为存放器数据写入使能,DI、OP为目的存放器写选通。DRCK信号为存放器组打入脉冲,上升沿有效。准双向I/O输入输出端口用于置数操作,经2片74LS245三态门与数据总线相连。
图2-3-3 通用存放器数据通路
四、实验内容
1. 实验连线
K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接〞部件控制电路。
连线
信号孔
接入孔
作用
有效电平
1
DRCK
CLOCK
单元手动实验状态的时钟来源
上升沿打入
2
X2
K10(M10)
源部件译码输入端X2
三八译码
八中选一
低电平有效
3
X1
K9(M9)
源部件译码输入端X1
4
X0
K8(M8)
源部件译码输入端X0
5
XP
K7(M7)
源部件奇偶标志:0=偶寻址,1=奇寻址
6
SI
K20(M20)
源存放器地址:0=CX,1=DX
7
RWR
K18(M18)
通用存放器写使能
低电平有效
8
DI
K17(M17)
目标存放器地址:0=CX,1=DX
9
OP
K16(M16)
目标部件奇偶标志:0=偶寻址,1=奇寻址
2. 存放器的读写操作
① 目的通路
当RWR=0时,由DI、OP编码产生目的存放器地址,详见下表。
通用存放器“手动/搭接〞目的编码
目标使能
通用存放器目的编址
功能说明
RW(K18)
DI(K17)
OP(K16)
T
0
0
0
↑
R0写
0
0
1
↑
R1写
0
1
0
↑
R2写
0
1
1
↑
R3写
② 通用存放器的写入
通过“I/O输入输出单元〞向R0、R1存放器分别置数11h、22h,操作步骤如下:
置数
I/O=XX11h
数据来源
I/O单元
存放器
R0=11h
K10~K7=1000
按【单拍】按钮
置数
I/O=XX22h
存放器
R1=22h
按【单拍】按钮
K18~K16=000
K18~K16=001
通过“I/O输入输出单元〞向R2、R3存放器分别置数33h、44h,操作步骤如下:
置数
I/O=XX33h
数据来源
I/O单元
存放器
R2=33h
K10~K7=1000
按【单拍】按钮
置数
I/O=XX44h
存放器
R3=44h
按【单拍】按钮
K18~K16=010
K18~K16=011
③ 源通路
当X2~X0=001时,由SI、XP编码产生源存放器,详见下表。
通用存放器“手动/搭接〞源编码
源使能
通用存放器源编址
功能说明
K10
K9
K8
K20
K7
X2
X1
X0
SI
XP
0
0
1
0
0
R0送总线
0
1
R1送总线
1
0
R2送总线
1
1
R3送总线
④ 通用存放器的读出
关闭写使能,令K18〔RWR〕=1,按下流程分别读R0、R1、R2、R3。
读R0
数据来源
通用存放器
数据总线
显示R0值
K10~K8=001
K20 K7=00
读R1
数据总线
显示R1值
K20 K7=01
读R2
数据来源
通用存放器
数据总线
显示R2值
K10~K8=001
K20 K7=10
读R3
数据总线
显示R3值
K20 K7=11
五、实验心得
通过这个实验让我清晰的了解了通用存放器的构成以及通用存放器是如何运用的,并且熟悉了通用存放器的数据通路,而且还深刻的掌握了通用存放器R3~R0的读写操作。
实验2 运算器实验
一、实验目的
掌握八位运算器的数据传输格式,验证运算功能发生器及进位控制的组合功能。
二、实验要求
完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。
三、实验原理
实验中所用的运算器数据通路如图2-3-1所示。ALU运算器由CPLD描述。运算器的输出FUN经过74LS245三态门与数据总线相连,运算源存放器A和暂存器B的数据输入端分别由2个74LS574锁存器锁存,锁存器的输入端与数据总线相连,准双向I/O输入输出端口用来给出参与运算的数据,经2片74LS245三态门与数据总线相连。
图2-3-1 运算器数据通路
图中AWR、BWR在“搭接态〞由实验连接对应的二进制开关控制,“0〞有效,通过【单拍】按钮产生的脉冲把总线上的数据打入,实现运算源存放器A、暂存器B的写入操作。
四、实验内容
1. 运算器功能编码
表2.3.1 ALU运算器编码表
算术运算
逻辑运算
K15
K13
K12
K11
功能
K15
K13
K12
K11
功能
M
S2
S1
S0
M
S2
S1
S0
0
0
0
0
A+B+C
1
0
0
0
B
0
0
0
1
A—B—C
1
0
0
1
/A
0
0
1
0
RLC
1
0
1
0
A-1
0
0
1
1
RRC
1
0
1
1
A=0
0
1
0
0
A+B
1
1
0
0
A#B
0
1
0
1
A—B
1
1
0
1
A&B
0
1
1
0
RL
1
1
1
0
A+1
0
1
1
1
RR
1
1
1
1
A
2.实验连线
K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接〞部件控制电路。
表2.3.2 运算实验电路搭接表
连线
信号孔
接入孔
作用
有效电平
1
DRCK
CLOCK
单元手动实验状态的时钟源
上升沿打入
2
X2
K10(M10)
源部件译码输入端X2
三八译码
八中选一
低电平有效
3
X1
K9(M9)
源部件译码输入端X1
4
X0
K8(M8)
源部件译码输入端X0
5
XP
K7(M7)
源部件奇偶标志:0=偶寻址,1=奇寻址
6
M
K15(M15)
运算控制位:0=算术运算,1=逻辑运算
7
S2
K13(M13)
运算状态位S2
8
S1
K12(M12)
运算状态位S1
9
S0
K11(M11)
运算状态位S0
10
AWR
K17(M17)
A运算源存放器写使能
低电平有效
11
BWR
K18(M18)
B运算源暂存器写使能
低电平有效
例如1 算术运算
1. 运算源存放器写流程
通过I/O单元“S7~S0”开关向累加器A和暂存器B置数,具体操作步骤如下:
置数
I/O=XX44h
数据来源
I/O单元
累加器
A=44
K10~K7=1000
按【单拍】按钮
置数
I/O=XX22h
暂存器
B=22
按【单拍】按钮
K18 K17=10
K18 K17=01
2. 运算源存放器读流程
关闭A、B写使能,令K18=K17=“1〞,按下流程分别读A、B。
读A
K15=1
数据来源
FUN
数据总线
DBUS=A
K10~K7=1100
K13~K11=111
读B
K15=1
K13~K11=000
数据总线
DBUS=B
3. 加法与减法运算
令M S2 S1 S0〔K15 K13~K11=0100〕,为算术加,FUN及总线单元显示A+B的结果
令M S2 S1 S0〔K15 K13~K11=0101〕,为算术减,FUN及总线单元显示A-B的结果。
例如2 逻辑运算
1. 运算源存放器写流程
通过“I/O输入输出单元〞开关向存放器A和B置数,具体操作步骤如下:
置数
I/O=XX22h
数据来源
I/O单元
累加器
A=22
K10~K7=1000
按【单拍】按钮
置数
I/O=XX44h
暂存器
B=44
按【单拍】按钮
K18 K17=10
K18 K17=01
2. 运算源存放器读流程
关闭A、B写使能,令K17= K18=1,按下流程分别读A、B。
读A
K15=1
数据来源
FUN
数据总线
DBUS=A
K10~K7=1100
K13~K11=111
读B
K15=1
K13~K11=000
数据总线
DBUS=B
① 假设运算控制位设为〔M S2 S1 S0=1111〕那么F=A,即A内容送到数据总线。
② 假设运算控制位设为〔M S2 S1 S0=1000〕那么F=B,即B内容送到数据总线。
3. 逻辑运算
令M S2 S1 S0〔K15 K13~K11=1101〕,为逻辑与,FUN及总线显示A逻辑与B的结果。
令M S2 S1 S0〔K15 K13~K11=1100〕,为逻辑或,FUN及总线显示A逻辑或B的结果。
例如3 移位运算
(1) A存放器置数
拨动“I/O输入输出单元〞开关向移位源存放器A置数,具体操作步骤如下:
置数
I/O=XX80h
数据来源
I/O单元
写数
A=80
K10~K7=1000
按【单拍】按钮
关写控位
K18 K17=10
K18 K17=11
(2) A存放器移位流程
改变K13 K11
移位控制
数据来源
FUN
DBUS=FUN
K10~K7=1100
移位结果
打入A
按【单拍】按钮
K17 K15 K12=001
完成上流程的操作后,按表2.3.3改变K13、K11的状态,再按动【单拍】钮,观察A的变化。
① 当K13 K11=11,每按一次【单拍】钮,A右移一位。
② 当K13 K11=10,每按一次【单拍】钮,A左移一位。
③ 当K13 K11=01,每按一次【单拍】钮,A带进位右移一位。
④ 当K13 K11=00,每按一次【单拍】钮,A带进位左移一位。
实验思考:
验证表2.3 .1 ALU运算器编码表所列的运算功能。
在给定A=55h、B=77h的情况下,K23~K0置“1〞,改变运算器的功能设置位M S2 S1 S0〔K15 K13~K11〕,观察运算器的输出,填入下页表格中,并和理论分析进展比拟、验证。
表2.3.4 ALU运算器真值表
运算控制
运算表达式
K15
K13
K12
K11
A
B
运算结果
M
S2
S1
S0
带进位算术加
A+B+C
0
0
0
0
55
77
FUN=( CC )
带借位算术减
A-B-C
0
0
0
1
55
77
FUN=( DE )
带进位左移
RLC A
0
0
1
0
55
77
FUN=( AA )
带进位右移
RRC A
0
0
1
1
FUN=( 2A )
算术加
A+B
0
1
0
0
FUN=( CC )
算术减
A-B
0
1
0
1
FUN=( DE )
左移
RL A
0
1
1
0
FUN=( AA )
右移
RR A
0
1
1
1
FUN=( AA )
取B值
B
1
0
0
0
55
77
FUN=( 77 )
A取反
NOT A
1
0
0
1
55
77
FUN=( AA )
A减1
A-1
1
0
1
0
55
77
FUN=( 54 )
清零
0
1
0
1
1
FUN=( 00 )
逻辑或
A OR B
1
1
0
0
FUN=( 77 )
逻辑与
A AND B
1
1
0
1
FUN=( 55 )
A加1
A+1
1
1
1
0
FUN=(56 )
取A值
A
1
1
1
1
FUN=( 55 )
五、实验心得
这个实现让我掌握了八位运算器的数据传输格式,并且验证运算功能发生器及进位控制的组合功能,顺利的完成了算术、逻辑、移位运算的实验,熟悉了ALU运算控制位的运用。
实验3 准双向I/O口实验
一、实验目的
熟悉与了解准双向I/O口的构成原理。
二、实验要求
掌握准双向I/O口的输入/输出特性的运用。
三、实验原理
Dais-CMX08+向用户提供的是按准双向原理设计的十六位输入/输出I/O口,当该位为“1”时才能用作输入源,上电或复位〔手动态按【返回】键〕,该十六位I/O口被置位〔即为“0FFFFh〞〕。通常情况下,在用作输入的时候就不能再有输出定义。电路构造如图2-3-4所示。该口外接十六位二进制数据开关,适用于外部数据的输入,该口跨接十六个发光二极管和经缓冲驱动的四个七段显示,能以二进制和十六进制两种方式显示I/O口的输入输出状态。发光管在高电平“1”时发光点亮。
图2-3-4 准双向I/O电路
实验中所用的I/O口数据通路如图2-3-5所示。I/O的输入经2片74LS245缓冲与数据总线相连,I/O口的输出由2片74LS574锁存后输出,锁存器的输入端与数据总线相连。
图2-3-5 十六位I/O的数据通路
四、实验内容
1. 实验连线
K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接〞部件控制电路。
连线
信号孔
接入孔
作用
有效电平
1
IOCK
CLOCK
单元手动实验状态的时钟来源
上升沿打入
2
X2
K10(M10)
源部件译码输入端X2
三八译码
八中选一
低电平有效
3
X1
K9(M9)
源部件译码输入端X1
4
X0
K8(M8)
源部件译码输入端X0
5
XP
K7(M7)
源部件奇偶标志:0=偶寻址,1=奇寻址
6
IOW
K17(M17)
I/O输出使能,本例定义到M17位
低电平有效
7
OP
K16(M16)
目标部件奇偶标志:0=偶寻址,1=奇寻址
2. 搭接方式I/O的寻址定义
I/O口源编址
I/O口目的编址
源编码
I/O编址
注释
目的I/O编址
注释
K10
K9
K8
K7
K17
K16
X2
X1
X0
XP
IOW
OP
1
0
0
0
S7~S0读
0
0
S7~S0写
1
S15~S8读
1
S15~S0写
3. I/O口奇送偶〔S15~S8送 S7~S0〕
置数
S15~S8=66
数据来源
S15~S8
写数据
S7~S0=66
K10~K7=1001
K17~K16=00
I/O开关
S15~S0置1
按【返回】键
按【单拍】按钮
4. I/O口偶送奇〔S7~S0送S15~S8〕
置数
S7~S0=99
数据来源
S7~S0
写数据
S15~S8=99
K10~K7=1000
K17~K16=01
I/O开关
S15~S0置1
按【返回】键
按【单拍】按钮
五、实验心得
通过这个实现让我彻底的掌握了准双向I/O口的输入/输出特性的运用,并且熟悉与了解了准双向I/O口的构成原理。
实验4 地址总线组成实验
一、实验目旳
1. 熟悉和了解地址总线的组成构造、地址来源及集合原理。
2. 掌握程序段与数据段的寻址规那么及地址部件的运用技巧。
二、实验要求
通过地址形成部件实验,建立“段〞概念,学会“段〞运用。
三、实验原理
地址总线的作用是传递地址信息,输出当前数据总线上发送信息的源地址或接收信息的目的地址。如下列图所示本系统设有程序与数据两条地址总线,通过PC计数器提供程序存储器地址,并由地址存放器AR传递数据存储器地址及外设地址,通过指令总线送AR形成指令定义的内存地址。
图2-3-6 地址总线组成通路
1. 8位内存地址Addr
如图2-3-6所示,本系统从提高信息存取效率的角度设计存储器地址通路,按现代计算机体系构造中最为典型的分段存取理念合成存储器地址总线addr,在指令操作“时段〞〔取操作码与取操作数〕,以当前程序指针PC为址;遇数据与内存传递“时段〞,以当前数据指针AR为址。addr地址的合成通路见图2-3-6。其寻址X围为0~0FFh。
2. 8位外设地址Address
如图2-3-6所示,本系统外设地址总线Address由地址锁存器AR直接提供,在P4页图1-5-1所示的XRD、XWR、ALE等外设控制信号的管理下,通过外DBUG数据总线完成外设信息由内到外或由外到内的传递。其寻址X围为0~0FF,可达256字节。
四、实验内容
1. 程序计数器实验
图2-3-7所示的PC指针由2片161组成八位程序计数器,计数器的输入端与总线相连构成PC装载通路,计数器的输出端途经三态门缓冲别离为两条通路,其一与总线相连构成程序指针访问通路,其二与地址存放器AR集合组成存储器地址总线。它的清零端由中央外理器单元直控,上电时PC计数器自动清零,在手动实验中,按【返回】键亦可实现计数器的强制清零。
手控“搭接〞状态,本实验由下表定义PC计数器的预置与加1操作,实验中以准双向I/O部件的S7~S0为计数器预置源。当IP=0时按单拍按钮,遇E/M=“0〞,在脉冲下降沿把S7~S0的内容装入PC计数器;遇E/M=“1〞,在脉冲下降沿完成PC计数器加1操作。
目标部件定义
节拍
功能说明
K23
K22
T
上升沿打入
E/M
LDPC
X
1
X
PC保持
1
0
↑
PC加1
0
0
↑
PC装载
说明:“↑〞表示上升沿有效
PC读出由P8页表2.2源编码表定义,在X2~X0〔K10~K8=000〕时,当前PC送总线。
2. 实验连线
K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接〞部件控制电路。
连线
信号孔
接入孔
作用
有效电平
1
DRCK
CLOCK
单元手动实验状态的时钟来源
上升沿打入
2
X2
K10(M10)
源部件译码输入端X2
三八译码
八中选一
低电平有效
3
X1
K9(M9)
源部件译码输入端X1
4
X0
K8(M8)
源部件译码输入端X0
5
XP
K7(M7)
源部件奇偶标志:0=偶寻址,1=奇寻址
6
LDAR
K19(M19)
数据存储器地址指针,本例定义K19
7
LDPC
K22(M22)
PC程序计数器更新位,本例定义到K22
低电平有效
8
E/M
K23(M23)
当IP有效时,E/M:0=PC装载,1=PC加1
2〕程序计数器PC的写入、读出与加1
通过“I/O单元〞开关向程序计数器PC置数,按【单拍】按钮完成PC指针的装载;然后K23、K22置“1〞,令K10~K8为“0〞,执行PC读操作。再令K23 K22=“10〞,实现PC+1
置数
I/O=XX10h
数据来源
I/O单元
打PC
PC=10h
K10~K7=1000
按【单拍】按钮
K23 K22=00
PC送DBUS
K23 K22=10
K10~K8=000
PC加1
按【单拍】按钮
保持PC+1状态,按【单拍】按钮,在CLOCK的上升沿PC加1并送数据总线,程序计数器和总线单元显示12h。继续按【单拍】按钮,观察PC与总线内容的变化。
3、地址存放器实验
图2-3-7所示的AR由1片74LS574锁存器构成八位数据指针,锁存器的输入端与总线相连构成置数通路,锁存器的输出端途经三态门缓冲别离与PC计数器集合组成存储器地址总线及外设总线。由中央外理器单元控制锁存器的清零,在手动实验中,按【返回】键即可实现AR锁存器的强制清零。
1〕地址存放器AR打入
在手控“搭接〞态,数据指针AR由LDAR及DRCK〔CLOCK脉冲〕二信号组合控制地址的装入操作。本实验以总线上准双向I/O部件的S7~S0为置数源。当K19=0时,按【单拍】钮,在脉冲下降沿把S7~S0的内容装入地址锁存器AR。操作步骤如下:
置数
I/O=XX06h
数据来源
I/O单元
AR=06h
K10~K7=1000
按【单拍】按钮
K23 K22 K19=110
AR送Addr
K10~K8=011
[06]送总线
K23 K19=01
五、实验心得
本次实现我熟悉和了解了地址总线的组成构造、地址来源及集合原理,学习到了程序段与数据段的寻址规那么以及地址部件的运用技巧,通过地址如何形成部件实验,建立“段〞概念,学会“段〞运用。
实验5 存储器读写实验
一、实验目的
熟悉和了解存储器组织与总线组成的数据通路。
二、实验要求
按照实验步骤完成实验工程,掌握存储部件在原理计算机中的运用。
三、实验原理
存储器是计算机的存储部件,用于存放程序和数据。存储器是计算机信息存储的核心,是计算机必不可少的部件之一,计算机就是按存放在存储器中的程序自动有序不连续地进展工作。
本系统从提高存储器存储信息效率的角度设计数据通路,按现代计算机中最为典型的分段存储理念把存储器组织划分为程序段、数据段、内存或堆栈段,由此派生了数据总线〔DBus〕、指令总线〔IBus〕、微总线〔μBus〕等与现代计算机设计规X相吻合的实验环境。
实验所用的存储器电路原理如图2-3-8所示,该存储器组织由一片6116构成具有段概念的信息存储体系,该存储体系Addr由IP指针和AR指针分时提供,E/M控位为“1〞时选通IP,反之选通AR。该存储器可动态变更程序源与数据源,把我们的教学实验提高到能与现代计算机设计规X相匹配与接轨的层面。
图2-3-8 存储器数据通路
四、实验内容
1. 实验连线
K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接〞部件控制电路。
连线
信号孔
接入孔
作用
有效电平
1
MOCK
CLOCK
单元手动实验状态的时钟来源
上升沿打入
2
X2
K10(M10)
源部件译码输入端X2
三八译码
八中选一
低电平有效
3
X1
K9(M9)
源部件译码输入端X1
4
X0
K8(M8)
源部件译码输入端X0
5
XP
K7(M7)
I/O部件奇偶标志:0=偶寻址,1=奇寻址
6
E/M
K23(M23)
Addr地址段定义:0=AR指针,1=PC指针
7
MWR
K21(M21)
存储器写使能:0=存储器写,1=存储器读
8
LDAR
K19(M19)
AR地址存放器写使能
低电平有效
9
LDPC
K22(M22)
PC装载与PC+1
低电平有效
2. 存储器数据段读写操作
(1) 数据段写操作
按下流程从0址单元开场,向数据段00h~05h单元依次写入11 22 33 44 55 66。
置地址
S7~S0=00h
I/O=0000h
打地址
00→AR
K10~K7=1000
K19=0
按【单拍】按钮
置数据
S7~S0=11h
写数据
11→[00]
K21=0
按【单拍】按钮
K19=1
K23=0
关存储器写
令K21=1
(2) 数据段读操作
依次读出数据段00~05h单元的内容,这里以0址单元读出为例阐述操作流程。
置地址
S7~S0=00
数据来源
I/O
关存储器写
AR→Addr
K10~K7=1000
K19=0
打地址
00→AR
读数据
[00]→总线
K10~K8=011
K23 K19=01
按【单拍】按钮
执行上述流程总线单元应显示11h,假设正确可按上述流程读出01h~05h单元的内容。
3. 存储器程序段读写操作
(1) 程序段写操作
① PC装载写操作流程:
数据来源I/O
置地址
S7~S0=00
K10~K7=1000
K23~K21=001
打PC
00→PC
置数据
S7~S0=55
K23~K21=110
写程序
55→[00]
按【单拍】按钮
按【单拍】按钮
② PC+1写操作流程:
K23~K21=110
PC+1
置数据
S7~S0=AA
按【单拍】按钮
K23~K21=101
写选通
打数据
AA→[PC+1]
按【单拍】按钮
设控位
K10~K7=1000
重复PC+1写流程,分别对02~04写入23 45 67。
(2) 程序段读操作
PC装载及PC+1读操作流程
置地址S7~S0=00
00→PC
K23 K22=00
K10~K7=1000
按【单拍】按钮
关装PC
读程序
55→总线
K10~K8=011
K23~K21=101
PC+1
[EM]→总线
按【单拍】按钮
完成上流程,PC=01,总线单元显示AA,此时每按一次【单拍】按钮,PC+1,总线单元依次显示23 45 67……等内容。
4. 程序与数据存储器的分段读出
⑴ 分段读出流程
K10~K8=011
关闭控位
PC=AR=00
K23~K0=全〞1”
按【返回】键
默认程序段
55→总线
选数据段
11→总线
K23=0
选程序段
55→总线
K23=1
由上流程可知存储器组织0地址的内容有两个,其中55为程序段内容,11为数据段内容。
五、实验心得
这次实验让我熟悉和了解了存储器组织与总线组成的数据通路,并且按照实验步骤完成了实验工程,掌握存储部件在原理计算机中的运用。
通过这几次实验也让我知道了合作的重要性,没有团队的合作,我也不可能那么顺利的完成所有实验。
. .word..
展开阅读全文