【计算机组成原理】实验3:地址总线实验

实验内容

一、实验原理

本系统设有内存与外设两条地址总线。通过PC计数器提供内存(程序存储器)地址,并由地址寄存器AR传递内存(数据存储器)地址与外设地址。另外堆栈寄存器SP亦可视为地址寄存器,它的堆顶指针指向数据与程序的存取地址。

image

1.11位内存地址Addr

如上图所示,本系统从提高信息存取效率的角度设计主内存地址通路,按现代计算机体系结构中最为典型的分段存取理念合成内存地址总线addr,在指令操作“时段”(取操作码与取操作数),以当前程序指针PC为址,遇主内存数据传递“时段”以当前数据指针AR为址。addr地址的合成通路见下图。其寻址范围为0~7FFH。

2.16位外设地址AddBus

如上图所示,本系统外设地址总线AddBus由地址锁存器AR直接提供,在外设控制信号XRD、XWR、ALE的管理下,通过外DBUS数据总线完成外设信息由内到外或由外到内的传递。其寻址范围为0~0FFFFH,可达64KB。

二、地址部件电路

image

三、地址总线手动在线实验

将系统状态设置为“手动”、“在线”

1.程序计数器实验

如上图所示的PC框由3片161构成按字方式寻址的11位PC计数器,计数器的输入端与总线相连构成置数通路,计数器的输出端途经三态门缓冲分离为两条通路,其一与总线相连构成可读通路,其二与地址寄存器(数据)集合组成内部存储器地址总线。它的清零端由中央处理器单元直控,上电时PC计数器自动淸零,实验中按【复位】钮亦可实现计数器的手动淸零。

手控状态,本实验由下表定义的目的编码控制PC计数器的预置与加1操作,并以准双向I/O部件的S10~S0为计数器预置源。当IP=0时按单拍按钮,遇E/M=0在脉冲下降沿把S10~S0的内容装入PC计数器。遇E/M=1在脉冲下降沿PC计数器加1。

image

说明: “↓”表示下降沿有效

PC计数器的读出操作由源编码下表定义。
image

(1)PC程序计数器的写入(PC的预置)

拨动“I/O输入输出单元”开关向程序计数器PC置数,操作步骤如下:0亮灯
image

(2) PC程序计数器的读出(取指令的操作)

K23~K0置全“1”,灭M23~M0指示灯。令K10~K7=0000打开PC输出三态门,数据总线单元显示PC指针“0100”。

(3) PC程序计数器装载与读出流程(PC加一)

保持当前状态,置K22=0,按【单拍】按钮,在CLOCK的上升沿PC加1并送数据总线,程序计数器和总线单元显示0101h。继续按【单拍】按钮,观察PC与总线内容的变化。

image

2. 地址寄存器实验

如第二大点中的图所示的AR框由2片74LS574锁存器构成按字方式寻址的16位数据指针。它的清零端由中央外理器单元直控,上电时锁存器自动淸零,实验中按【返回】键亦可实现锁存器的手动淸零。按设计规范数据指针AR的特性定义为字写入寄存器。

地址寄存器AR打入

在手控/在线态,数据指针AR由目的编码控制位O2~O0、OP及单拍按钮的组合控制实现AR地址的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当O2~O0=110、OP=0时按单拍钮,在脉冲下降沿把S15~S0的内容装入地址锁存器AR。操作步骤如下:

image

image

3. 堆栈寄存器实验

如第二大点的图所示的SP框由2片74LS574锁存器构成16位堆栈指针。在调用中断等突发事件处理中SP指针以间址方式把当前程序指针存入SP-2单元,遇返回指令SP又把栈项所指单元的内容装入程序计数器,然后SP+2退至原始位置。

在手控/在线态,堆栈指针SP由O2~O0 OP及DRCK(CP脉冲)五信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。堆栈指针SP的读出操作由第二张表格所列的源编码表定义。

栈指针打入与读出流程

按下流程通过I/O单元S15~S0开关向SP指针置数,然后关闭SP写使能,完成SP读操作。

image

image

四、地址总线手动搭接实验

1. 将系统状态设置为“手动”、“搭接”

2. 实验连线

连线信号孔接入孔作用
1DRCKCLOCK单元手动实验状态的时钟来源
2WK6(M6)总线字长:0=16位字操作,1=8位字节操作
3XPK7(M7)源奇偶位:0=偶寻址,1=奇寻址
4OPK16(M16)目的奇偶位:0=偶寻址,1=奇寻址
5X2K10(M10)源部件定义译码端X2
6X1K9(M9)源部件定义译码端X1

3. 程序计数器实验

(1) PC程序计数器的写入

通过“I/O单元”开关向程序计数器PC置数,操作步骤如下:

image

(2) PC程序计数器的读出

在PC置数操作完成后,按上流程中后两步的要求,关闭PC写使能(K23、K22=11),打开PC输出三态门(K10~K6=00000),数据总线单元应显示的PC指针为0100h。

(3) PC程序计数器加1

在保持PC置数与读出流程的状态下,令K22=0,按【单拍】按钮,在DRCK节拍的下降沿PC计数器加1并送数据总线,PC程序计数器和数据总线单元的显示器应显示0101h。继续按【单拍】按钮,观察PC与数据总线的内容。

4. 地址寄存器实验

在手控/搭接态,数据指针AR由W、LDAR及DRCK(CP脉冲)三信号组合控制地址的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当W=0、LDAR=0时按【单拍】钮,在脉冲下降沿把S15~S0的内容装入地址锁存器AR。操作步骤如下:

image

5. 堆栈寄存器实验

在手控/搭接态,堆栈指针SP由W、SPW及DRCK(CP脉冲)三信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当W=0、SPW=0时按单拍按钮,在脉冲下降把S15~S0的内容装入SP。

1)堆栈指针SP打入
拨动“I/O输入输出单元”开关向堆栈指针SP置数,具体操作步骤如下:
image

2)堆栈指针SP读出
关闭SP写使能,令SPW=1 按下流程完成SP送总线。
image

实验报告

学院、系:计算机学院
专业名称:软件工程
学生姓名:小何学长

一、实验题目

程序计数器实验

PC框由3片161构成按字方式寻址的11位PC计数器,计数器的输入端与总线相连构成置数通路,计数器的输出端途经三态门缓冲分离为两条通路,其一与总线相连构成可读通路,其二与地址寄存器(数据)集合组成内部存储器地址总线。它的清零端由中央处理器单元直控,上电时PC计数器自动淸零,实验中按“复位”钮亦可实现计数器的手动淸零。

手控状态,本实验由目的编码控制PC计数器的预置与加1操作,并以准双向I/O部件的S10~S0为计数器预置源。当IP=0时按单拍按钮,遇E/M=0在脉冲下降沿把S10~S0的内容装入PC计数器。遇E/M=1在脉冲下降沿PC计数器加1。

二、实验目的与要求

实验目的

  1. 熟悉和了解地址总线的组成结构、地址来源及组合原理。
  2. 掌握程序段与数据段的寻址规则及地址部件的运用技巧。

实验要求

  • 通过地址形成部件实验,建立“段”概念,学会“段”运用。

三、实验步骤

(1)PC程序计数器的写入 —— PC的预置

拨动“I/O输入输出单元”开关向程序计数器PC置数,操作步骤如下:(0亮灯)

image

效果如图所示:

image

(2)PC程序计数器的读出——取指令的操作

K23~K0置全“1”,灭M23~M0指示灯。令K10~K7=0000打开PC输出三态门,数据总线单元显示PC指针“0100”。

效果如图所示:

image

(3)PC程序计数器装载与读出流程 —— PC加一

保持当前状态,置K22=0,按【单拍】按钮,在CLOCK的上升沿PC加1并送数据总线,程序计数器和总线单元显示0101h。继续按【单拍】按钮,观察PC与总线内容的变化。

效果如图所示:

image

四、实验结论

结论1

编码控制PC计数器的预置与加1操作,并以准双向I/O部件的S10~S0为计数器预置源。当IP=0时按单拍按钮,遇E/M=0在脉冲下降沿把S10~S0的内容装入PC计数器。遇E/M=1在脉冲下降沿PC计数器加1。

结论2

SP框由2片74LS574锁存器构成16位堆栈指针。在调用中断等突发事件处理中SP指针以间址方式把当前程序指针存入SP-2单元,遇返回指令SP又把栈项所指单元的内容装入程序计数器,然后SP+2退至原始位置。

在手控/在线态,堆栈指针SP由O2~O0 OP及DRCK(CP脉冲)五信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。堆栈指针SP的读出操作由设定的源编码表定义。

结论3

在手控/搭接态,堆栈指针SP由W、SPW及DRCK(CP脉冲)三信号组合控制栈指针的置数操作。本实验以总线上准双向I/O部件的S15~S0为置数源。当W=0、SPW=0时按单拍按钮,在脉冲下降把S15~S0的内容装入SP

五、心得体会

学习了解地址总线的组成结构、地址来源及组合原理,初步熟悉了通过PC计数器提供内存(程序存储器)地址,并由地址寄存器AR传递内存(数据存储器)地址与外设地址的相关原理,以及认识了堆栈寄存器SP亦可视为地址寄存器,它的堆顶指针指向数据与程序的存取地址等知识,还有点懵懂,到时课后有时间在深入学习了解。

文档获取

完整版的实验内容+实验报告的Word文档

下载地址:https://download.csdn.net/download/HXBest/21561593?spm=1001.2014.3001.5503

  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代号神秘

你的鼓励是我创作的最佳动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值