学生实验报告

实验课名称:计算机组成原理
实验项目名称:系统总线与系统接口

一、实验名称:

(1)系统总线和具有基本输入输出功能的总线接口实验
(2)具有中断控制功能的总线接口实验
(3)具有DMA控制功能的总线接口实验

二、实验目的:

1)系统总线和具有基本输入输出功能的总线接口实验
(1)理解总线的概念及其特性。
(2)掌握控制总线的功能和应用。
2)具有中断控制功能的总线接口实验
(1)掌握中断控制信号线的功能和应用
(2)掌握在系统总线上设计中断控制信号线的方法
3)具有DMA控制功能的总线接口实验
(1)掌握DMA控制信号线的功能和应用
(2)掌握在系统总线上设计DMA控制信号线的方法

三、实验要求:

总线是计算机中连接各个功能部件的纽带,是计算机各部件之间进行信息传输的公共通路。总线不只是一组简单的信号传输线,它还是- -组协议。分时与共享是总线的两大特征。所谓共.享,在总线上可以挂接多个部件,它们都可以使用这一信息通路来和其他部件传送信息。所谓分时,同一总线在同一时刻,只能有一个部件占领总线发送信息,其他部件要发送信息得在该部件发送完释放总线后才能申请使用。总线结构是决定计算机性能、功能、可扩展性和标准化程度的重要因素。本章安排了三个实验:系统总线和具有基本输入输出功能的总线接口实验、具有中断控制功能的总线接口实验和具有DMA控制功能的总线接口实验。

四、实验内容:

1)系统总线和具有输入输出功能的总线接口实验
由于存储器和输入、输出设备最终是要挂接到外部总线上,所以需要外部总线提供数据信号、地址信号以及控制信号。在该实验平台中,外部总线分为数据总线、地址总线、和控制总线,分别为外设提供上述信号。外部总线和CPU内总线之间通过三态门连接,同时实现了内外总线的分离和对于数据流向的控制。地址总线可以为外部设备提供地址信号和片选信号。由地址总线的高位进行译码,系统的I/O地址译码原理见图4-1-1 (在地址总线单元)。由于使用A6、A7进行译码,I/O 地址空间被分为四个区,如表4-1-1所示:

为了实现对于MEM和外设的读写操作,还需要一个读写控制逻辑,使得CPU能控制MEM和I/O设备的读写,实验中的读写控制逻辑如图4-1-2所示,T3的参与,可以保证写脉宽与T3-致,T3由时序单元的TS3给出(时序单元的介绍见附录2)。IOM用来选择是对I/O设备还是对MEM进行读写操作,IOM=1 时对I/O设备进行读写操作,IOM=0时对MEM进行读写操作。RD=1时为读,WR=1时为写。

在理解读写控制逻辑的基础上我们设计一个总线传输的实验。它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实现总线信息传输。

2)具有中断控制功能的总线接口实验
为了实现中断控制,CPU必须有一个中断使能寄存器,并且可以通过指令对该寄存器进行操作。设计下述中断使能寄存器,其原理如图4-2-1所示。其中EI为中断允许信号,CPU开中断指令STI对其置1,而CPU关中断指令CLI对其置0。每条指令执行完时,若允许中断,CPU给出开中断使能标志STI,打开中断使能寄存器,EI有效。EI 再和外部给出的中断请求信号一起参与指令译码,使程序进入中断处理流程。本实验要求设计的系统总线具备有类X86的中断功能,当外部中断请求有效、CPU允许响应中断,在当前指令执行完时,CPU将响应中断。当CPU响应中断时,将会向8259发送两个连续的INTA号,请注意,8259是在接收到第一个INTA信号后锁住向CPU的中断请求信号INTR (高电平有效),并且在第二个INTA信号到达后将其变为低电平(自动EOI方式),所以,中断请求信号IR0应该维持一段时间,直到CPU发送出第一个INTA信号,这才是一个有效的中断请求。8259 在收到第二个INTA信号后,就会将中断向量号发送到数据总线,CPU读取中断向量号,并转入相应的中断处理程序中。在读取中断向量时,需要从数据总线向CPU内总线传送数据。所以需要设计数据缓冲控制逻辑,在INTA信号有效时,允许数据从数据总线流向CPU内总线。其原理图如图4-2-2所示。其中RD为CPU从外部读取数据的控制信号。

在控制总线部分表现为当CPU开中断允许信号STI有效、关中断允许信号CLI无效时,中断标志EI有效,当CPU开中断允许信号STI无效、关中断允许信号CLI有效时,中断标志EI无效。EI无效时,外部的中断请求信号不能发送给CPU。
3)具有DMA控制功能的总线接口实验
有一类外设在使用时需要占用总线,其中的典型代表是DMA控制机。在使用这类外设时,总线的控制权要在CPU和外设之间进行切换,这就需要总线具有相应的信号来实现这种切换,避免总线竞争,使CPU和外设能够正常工作。下面以DMA操作为例,设计相应的总线控制信号线。实验原理图如图4-3-1所示。

进行DMA操作时,外设向DMAC(DMA控制机)发出DMA传送请求,DMAC通过总线上的HOLD信号向CPU提出DMA请求。CPU在完成当前总线周期后对DMA请求做出响应。CPU的响应包括两个方面,一方面让出总线控制权,一方面将有效的HALD信号加到DMAC 上,通知DMAC可以使用总线进行数据传输。此时DMAC进行DMA传输,传输完成后,停岣CPU发HOLD信号,撤消总线请求,交还总线控制权。CPU在收到无效的HOLD信号后,一方面使HALD无效,另一方面又重新开始控制总线,实现正常的运行。
如图4-3-1 所示,在每个机器周期的T4时刻根据HOLD信号来判断是否有DMA请求,如果有,则产生有效的HALD信号,HALD信号-方面锁死CPU的时钟信号,使CPU保持当前状态,等待DMA操作的结束。另-方面使控制缓冲、数据缓冲、地址缓冲都处于高阻状态,隔断CPU与外总线的联系,将外总线交由DMAC控制。当DMA操作结束后,DMAC将HOLD信号置为无效,DMA控制逻辑在T4时刻将HALD信号置为无效,HALD信号一方面打开CPU的时钟信号,使CPU开始正常运行。另一方面把控制缓冲、数据缓冲和地址缓冲交由CPU控制,恢复CPU对总线的控制权。

五、实验设备及工具:

PC机一台,TD-CMA实验系统一套

六、实验过程详述:

1)系统总线和具有输入输出功能的总线接口实验
1.读写控制逻辑设计实验。
(1) 按照图4-1-4实验接线图进行连线。

(2)具体操作步骤图示如下:
首先将时序与操作台单元的开关KKl、KK3置为‘运行’档,开关KK2置为‘单拍’档,按动CON单元的总清按钮CLR,并执行下述操作。
①对MEM进行读操作(WR=0, RD=1, IOM=0),此时E0灭,表示存储器读功能信号有效。
②对MEM进行写操作(WR=1, RD=0, IOM=0),连续按动开关ST,观察扩展单元数据指示灯,指示灯显示为T3时刻时,E1灭,表示存储器写功能信号有效。
③对I/O进行读操作(WR=0, RD=1, IOM=1),此时E2灭,表示I/O读功能信号有效。
④对I/O进行写操作(WR=1, RD=0, IOM=1),连续按动开关ST,观察扩展单元数据指示灯,指示灯显示为T3时刻时,E3灭,表示I/O写功能信号有效。
2.基本输入输出功能的总线接口实验。
(1)根据挂在总线上的几个基本部件,设计一个简单的流程:
①输入设备将-一个数打入RO寄存器。
②输入设备将另一个数打入地址寄存器。
③将R0寄存器中的数写入到当前地址的存储器中。
④将当前地址的存储器中的数用LED数码管显示。
(2)按照图4-1-5实验接线图进行连线。
(3)具体操作步骤图示如下:
进入软件界面,选择菜单命令“[实验] - [简单模型机]”,打开简单模型机实验数据通路图。将时序与操作台单元的开关KK1、KK3置为‘ 运行’档,开关KK2置为‘单拍’档,CON单元所有开关置0 (由于总线有总线竞争报警功能,在操作中应当先关闭应关闭的输出开关,再打开应打开的输出开关,否则可能由于总线竞争导致实验出错),按动CON单元的总清按钮CLR,然后通过运行程序,在数据通路图中观测程序的执行过程。
①输入设备将11H打入R0寄存器。
将IN单元置00010001,K7置为1,关闭R0寄存器的输出;K6置为1,打开RO寄存器的输入; WR、RD、IOM分别置为0、1、1,对IN单元进行读操作; LDAR置为0,不将数据总线的数打入地址寄存器。连续四次点图形界面上的“单节拍运行”按扭(运行一个机器周期),观察图形界面,在T4时刻完成对寄存器R0的写入操作。
②将R0中的数据11H打入存储器01H单元。
将IN单元置00000001 (或其他数值)。K7置为1,关闭RO寄存器的输出; K6置为0,关闭R0寄存器的输入; WR、RD、IOM分别置为0、1、1,对IN单元进行读操作; LDAR置为1,将数据总线的数打入地址寄存器。连续四次点击图形界面上的“单节拍运行”按扭,观察图形界面,在T3时刻完成对地址寄存器的写入操作。先将WR、RD、IOM分别置为1、0、0,对存储器进行写操作;再把K7置为0,打开R0寄存器的输出; K6置为0,关闭RO寄存器的输入; LDAR 置为0,不将数据总线的数打入地址寄存器。连续四次点击图形界面上的“单节拍运行”按扭,观察图形界面,在T3时刻完成对存储器的写入操作。
2)具有中断控制功能的总线接口实验
(1)按照图4-2-3实验接线图进行连线。

(2)具体操作步骤图示如下:
①对总线进行置中断操作(K6=1, K7=0),观察控制总线部分的中断允许指示灯EI,此时EI亮,表示允许响应外部中断。按动时序与操作台单元的开关KK,观察控制总线单元的指示灯INTR,发现当开关KK按下时INTR变亮,表示总线将外部的中断请求送到CPU。
②对总线进行清中断操作(K6=0, K7=1),观察控制总线部分的中断允许指示灯EI,此时EI灭,表示禁止响应外部中断。按动时序与操作台单元的开关KK,观察控制总线单元的指示灯INTR,发现当开关KK按下时INTR不变,仍然为灭,表示总线锁死了外部的中断请求。
③对总线进行置中断操作(K6=1, K7=0),当CPU给出的中断应答信号INTA’(K5=0)有效时,使用电压表测量数据缓冲74LS245的DIR (第1脚),显示为低,表示CPU允许外部送中断向量号。3)具有DMA控制功能的总线接口实验
(1)按照图4-3-2实验接线图进行连线。

(2)具体操作步骤如下:
①将时序与操作台单元的开关KK1、KK3置为‘运行’档,开关KK2置为‘单拍’档,按动CON单元的总清按钮CLR,将CON单元的WR、RD、IOM 分别置为“0”、“1”、 “0”,此时XMRD为低,相应的指示灯E0灭。使用电压表测量数据总线和地址总线左侧的芯片74LS245的使能控制信号(第19脚),发现电压为低,说明数据总线和地址总线与CPU连通。
②然后将CON单元的K7置为1,连续按动时序与操作台单元的开关ST,T4时刻控制总线的指示灯HALD为亮,继续按动开关ST,发现控制总线单元的时钟信号指示灯T1一-T4 保持不变,说明CPU的时钟被锁死。此时XMRD为高阻态,相应的指示灯E0亮。使用万用表测量数据总线和地址总线左侧的芯片74LS245的使能控制信号(第19脚),发现电压为高,说明总线和CPU的连接被阻断。③将CON单元的K7置为0,按动时序与操作台单元的开关ST,当时序信号走到T4时刻时,控制总线的指示灯HALD为灭,继续按动开关ST,发现控制总线单元的时钟信号指示灯T1–T4开始变化,说明CPU的时钟被接通。此时XMRD受CPU控制,恢复有效为低,相应的指示灯E0灭。使用万用表测量数据总线和地址总线左侧的芯片74LS245的使能控制信号(第19脚),发现电压为低,说明总线和CPU恢复连通。

六、实验结果与分析

在三个不同的实验中,都可以正确的得出运行结果,证明数据传输是没有问题的,三种数据的输入输出方式有着本质上的区别,也就造成了CPU不同的工作效率。

七、心得体会:

通过这次实验,使得自己对系统总线和总线接口有了更深的了解。总线作为CPU与外设、存储器之间传递数据的“桥梁”,有着举足轻重的作用。在数据/地址多路复用总线上,可以输入输出数据,起着沟通的作用。在不同的总线周期,执行不同的指令操作,总线上也传递着不同的数据。为了使CPU能够具有更高的工作效率,产生了中断这种技术。原来CPU必须不断查询外设,询问其状态,以便在需要的时候运行子程序。但是这种方法特别耗时,CPU一直在查询外设状态,无法执行自己的工作。有了中断之后,CPU可以做着自己的工作,一旦外设发出中断请求,CPU便转向子程序,执行指令,执行完后再回到中断处,这里一来CPU的工作效率大大提高。虽然中断的产生使得CPU在需要的时候执行子程序,但是在传送数据的时候,都是由CPU进行监控,一旦数据量非常大的时候,这时对CPU的负担是非常大的。因为请求都是“外设-CPU-存储器”或者“存储器-CPU-外设”,无论何种方式,CPU都必须无时无刻对每一个数据进行监控。DMA是一直使得数据可以直接从“外设-存储器”或者“存储器-外设”,这样一来,CPU便可以在数据传输过程中,继续执行自己的操作,数据传送过程则由DMA控制。这样一来CPU的工作效率又大大提高了许多。通过这次的三个实验,自己对计算机内部数据传递的方式有了深刻的了解,不同是方式有着不同的优缺点,在不同的需求场合下,需要合理的选择适合的方法。

计算机组成原理实验:系统总线与系统接口相关推荐

  1. 计算机组成原理实验2总线,计算机组成原理实验 2.1 总线与寄存器 赖晓铮.ppt

    计算机组成原理实验 2.1 总线与寄存器 赖晓铮.ppt 还剩 13页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 计算机组成原理计算机组成原理 实验 ...

  2. 新视窗java_《计算机组成原理实验》教学大纲 - 兰州大学信息科学与工程学院.DOC...

    <计算机组成原理实验>教学大纲 - 兰州大学信息科学与工程学院 目 录 <C++课程设计>教学大纲1 <C语言课程设计>教学大纲3 <C语言课程设计>教 ...

  3. 计算机组成结构实验箱,计算机组成原理实验仪|数字电路实验箱|PLC可编程实验箱-上海育源教学设备...

    一.产品介绍: 根据理工科院校<计算机组成原理课程大纲>的要求,在吸收了国内同类产品优点的基础上,结合我厂长期开发单片微机积累的经验,并配有 以Windows98/windows2000为 ...

  4. el-jy-ii计算机组成原理实验报告,EL-JY-II型计算机组成原理实验系统

    一.适用范围: EL-JY-II型计算机组成原理实验系统是为<计算机组成原理>课程的教学实验而研制的,涵盖了目前流行教材的主要内容,能完成主要的基本部件实验和整机模拟实验,同时也可供计算机 ...

  5. 计算机组成原理实验系统,QY-JSJ03

    计算机分为五大组成部分,分别为:控制器.运算器.存储器.输入设备和输出设备. QY-JSJ03计算机组成原理实验装置是一台硬件组成相对完备的计算机系统,CPU.主存.I/O接口及总线等有一定的典型性, ...

  6. cop2000计算机组成原理,COP2000计算机组成原理实验系统

    COP2000计算机组成原理实验系统 3. 万用汇编器 用户可以自定义指令/微指令系统,COP2000软件可以对用户自己定义的汇编助记符进行编译,自动生成代码/微代码.实验系统出厂时提供了完善的指令系 ...

  7. 计算机组成原理调试程序,计算机组成原理实验调试系统调试系统.PDF

    计算机组成原理实验调试系统调试系统 可视化计算机组成原理实验调试系统 系统组成 实验调试系统由 3 个部分组成:实验软件. 调试适配器和 FPGA 片上调试器. 实验软件提供操作实验电路的人机交 互平 ...

  8. 计算机组成TEC4,计算机组成原理实验系统TEC4详细资料

    计算机组成原理实验系统TEC4详细资料 ▲ 技术性能及特点 1. 采用单板式结构.计算机模型简单.实用.计算机模型分为数据通路.控制器(包括时序电路).控制台.用户自定义区四部分,划分清晰.各部分之间 ...

  9. 计算机组成原理实验tec2000,TEC-2000A计算机组成原理实验系统

        计算机组成原理是大学计算机系的一门重要技术基础课.TEC-2000A计算机组成原理教学机实验系统由清华大学科教仪器厂.清华大学计算机系联合研制.可用于电大.本科.硕士研究生的计算机组成原理课程 ...

最新文章

  1. MongoDB数据库安装与连接
  2. 动力节点老杜mysql文件_mysql主从复制+mysql主从复制延迟解决方案
  3. Python练习:期末测评
  4. 用unity制作能量护盾(3)
  5. ognl概念和原理详解
  6. 迈向 HTTPS,HTTPS 到底解决了什么问题
  7. 42.验证和授权(2)
  8. 【Multisim】关于Multisim仿真“运放积分器”出现的问题以及解决方法
  9. 年终囍一批、愁一批......浮躁啊,眼红啊,这个真有
  10. 【CSS】从熟悉到更熟悉
  11. Android新浪微博分页加载,Android仿新浪微博自定义ListView下拉刷新(4)
  12. C语言实例5——用*号输出字母C的图案。
  13. “冰箱强行播广告关不了”上热搜,网友:买了块广告牌回家
  14. 基于Python/Capl脚本 对通信矩阵报文(Flexray/CAN)的周期检测(一)
  15. 百度Q2净利润同比增长45% 百家号成信息流营收源动力
  16. Redis源码剖析和注释(十六)---- Redis输入输出的抽象(rio)
  17. 小蒋搜搜(xp search) 官网
  18. 李宏毅《DLHLP》学习笔记7 - Voice Conversion
  19. Android解耦式so库加载方案
  20. 12306:候补购票服务扩大到全部列车;G Suite 漏洞:部分密码明文存储

热门文章

  1. Python:实现字符串Z 函数或 Z 算法(附完整源码)
  2. 深入理解图卷积神经网络(GCN)原理
  3. AD936x 系列快速入口
  4. ASEMI代理AD5934YRSZ-REEL7原装ADI车规级AD5934YRSZ-REEL7
  5. Map 和ConcurrentMap 线程不安全和线程安全证明
  6. cmake添加查找目录_CMake如何查找库路径(一)
  7. 修改vimdiff的颜色配置
  8. mysql 查询不等于空的数据查询
  9. openstack项目中遇到的各种问题总结 其一(问题多多)
  10. Python OpenSSL 解析证书