第21讲_输入输出系统_第1页
第21讲_输入输出系统_第2页
第21讲_输入输出系统_第3页
第21讲_输入输出系统_第4页
第21讲_输入输出系统_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1实验课题实验课题4 控制器设计控制器设计实验内容:实验内容: 按照题目要求设计计算机控制器的基本逻辑(不包括微操作信号产生电路),决定外部的端口(名称、有效电平)和内部各元件的连接,画出系统框图和逻辑图,设计仿真数据,用VHDL编程和仿真。 用层次结构设计的方法设计控制器的指令部件。 下层元件的设计已经在实验3中完成。包括:程序计数器、指令寄存器、数据寄存器、地址寄存器、指令译码器等。本实验只需要做顶层设计。(2学时)2实验课题实验课题4 控制器设计控制器设计实验内容:实验内容: 二、顶层设计二、顶层设计 功能要求:功能要求: 具有控制器的部分基本功能,能够控制取指令操作、控制访存具有控制器

2、的部分基本功能,能够控制取指令操作、控制访存取数据操作、控制访存存数据操作、指令译码取数据操作、控制访存存数据操作、指令译码,等。 取指令机器周期取指令机器周期:把程序计数器的内容送到地址总线,延迟一段时间后把从存储器中读出的指令(通过数据总线读入),送到指令寄存器;每取一个指令字程序计数器加1。 取数据机器周期取数据机器周期:把地址寄存器的内容送到地址总线,延迟一段时间后把从存储器中读出的数据(通过数据总线)送到数据寄存器。 存数据机器周期存数据机器周期:把地址寄存器的内容送到地址总线,把数据寄存器中的数据送到数据总线,延迟一段时间后结束。 指令译码指令译码:假设操作码在指令字的最高3位。3

3、实验课题实验课题4 控制器设计控制器设计 提示提示1: 控制器内部数据通路,可以是总线结构,也可以是直接连接结构。 提示提示2: 控制器与系统总线的连接方法,有两种结构可以考虑: 程序计数器、指令寄存器、数据寄存器、地址寄存器都与系统总线有直接连接。 只有数据寄存器和地址寄存器与系统总线连接。程序计数器和指令寄存器不与系统总线连接。程序计数器内容必须先送到地址寄存器,然后才能到地址总线。从存储器中读出的指令必须先送到数据寄存器,然后才能到指令寄存器。 三、仿真三、仿真 设计仿真波形数据,模拟取指令、访存取数据、访存存数据等操作。要考虑到所有可能的情况。在实验报告中必须清楚说明仿真波形数据是怎样

4、设计的。计算机组成原理Principles of Computer Organization广义双语教学课程09/skyclass25/青岛理工大学 校级精品课程http:/ 输入输出系统输入输出系统Chapter 10 Input / output SystemInputs are the signals or data received by the system, and outputs are the signals or data sent from it. I/O devices are used by a person (or other sy

5、stem) to communicate with a computer.n输入输出设备的编址输入输出设备的编址n输入输出的控制方式输入输出的控制方式n中断方式中断方式nDMA方式方式n接口n总线6 输入输出系统包括外部设备(输入输出系统包括外部设备(I/O设备,辅助存储器)及设备,辅助存储器)及其与主机之间的控制部件。其与主机之间的控制部件。101 输入输出系统概述输入输出系统概述In computing, input/output, or I/O, refers to the communication between an information processing system (s

6、uch as a computer), and the outside world possibly a human, or another information processing system. I/O Interface is required whenever the I/O device is driven by the processor. The interface must have necessary logic to interpret the device address generated by the processor. 7在计算机系统中实际应用的有两类编址方法

7、:在计算机系统中实际应用的有两类编址方法: 主存主存与与I/O统一编址统一编址( Memory-mapped I/O ), 主存主存与与I/O分开独立编址分开独立编址( Isolated I/O) 。1独立编址独立编址 Isolated I/O 主存主存与与I/O分开独立编址是将主存储器与分开独立编址是将主存储器与I/O设备放在两个设备放在两个独立的地址空间。独立的地址空间。 必须有专门的必须有专门的控制信号控制信号来区分出现在地址总线上的地址是来区分出现在地址总线上的地址是访存还是访问访存还是访问I/O,有专门的,有专门的输入输出指令输入输出指令。I/O指令的指令指令的指令地址码短地址码短,

8、但不能对端口进行运算操作。但不能对端口进行运算操作。输入输出设备的编址输入输出设备的编址82统一编址统一编址 Memory-mapped I/O 主存主存与与I/O统一编址是将主存储器与统一编址是将主存储器与I/O设备放在同一个地设备放在同一个地址空间,址空间,CPU用和访问主存相同的方法访问用和访问主存相同的方法访问I/O设备。设备。 没有专门的没有专门的I/O指令,用对存储器的数据传送指令进行输指令,用对存储器的数据传送指令进行输入输出。入输出。 所有能够对存储器进行运算操作的指令都可以用于对端口所有能够对存储器进行运算操作的指令都可以用于对端口进行运算操作。进行运算操作。缺点是访问缺点是

9、访问I/O设备的指令地址码太长。设备的指令地址码太长。A computer that uses memory-mapped I/O accesses hardware by reading and writing to specific memory locations, using the same assembler language instructions that computer would normally use to access memory. 9 不同的外部设备在数据宽度(不同的外部设备在数据宽度(1 / 8 / 16 / 32位),传送方位),传送方式(串行式(串行 /

10、 并行),控制信号并行),控制信号 / 状态信号,一次交换的数据量状态信号,一次交换的数据量(位(位 / 字符字符 / 数据块),等方面都有或多或少的差别。数据块),等方面都有或多或少的差别。 接口、设备控制器、设备适配器控制并实现主机与外部设接口、设备控制器、设备适配器控制并实现主机与外部设备之间的数据传送。备之间的数据传送。 设备控制器(设备控制器(接口)接口) CPU必须通过接口与外部设备交换数据。主机与外部设备必须通过接口与外部设备交换数据。主机与外部设备之间交换的信息包括:数据信息、控制信息、状态信息和外设之间交换的信息包括:数据信息、控制信息、状态信息和外设识别信息等。识别信息等。

11、外部设备多是慢速的光机电设备。外部设备多是慢速的光机电设备。外设的工作与外设的工作与CPU是异步的。是异步的。 外设不仅速度远低于主机,而且信号类型(模拟外设不仅速度远低于主机,而且信号类型(模拟/数字)和数字)和工作电平往往与主机不同。工作电平往往与主机不同。10接口接口( (Interface)的基本功能:的基本功能:(1) 实现主机与外部设备之间的数据传送控制。实现主机与外部设备之间的数据传送控制。 其中包括:同步控制,设备选择和中断控制等。其中包括:同步控制,设备选择和中断控制等。DMA接口接口还有直接访问存储器的功能。还有直接访问存储器的功能。CPU必须给出设备的地址,发出输入必须给

12、出设备的地址,发出输入/输出控制命令。输出控制命令。(2) 实现数据缓冲。实现数据缓冲。 在接口电路中一般有在接口电路中一般有1个或几个数据缓冲寄存器,用于数据个或几个数据缓冲寄存器,用于数据的暂存,以避免因为速度不一致而丢失数据。的暂存,以避免因为速度不一致而丢失数据。 接口的功能和组成接口的功能和组成 通过数据缓冲达到主机与外设之间的速度匹配。通过数据缓冲达到主机与外设之间的速度匹配。 11Handshaking should be implemented by the interface using appropriate commands like (BUSY,READY,WAIT)

13、the processor can communicate with I/O device through the interface. If incase different data formatted being exchanged, interface must be able to convert serial data to parallel form and vice-versa. (3) 传递控制命令和状态信息传递控制命令和状态信息 接口接受处理机的命令,提供设备接口的状态,并按照主接口接受处理机的命令,提供设备接口的状态,并按照主机的命令控制设备。机的命令控制设备。(4) 数

14、据格式的变换数据格式的变换 如果主机与外部设备之间的数据宽度或数据格式不同,就如果主机与外部设备之间的数据宽度或数据格式不同,就需要做数据格式的变换。例如,串行需要做数据格式的变换。例如,串行/并行转换,模拟并行转换,模拟/数字转数字转换,码制转换等。换,码制转换等。 12接口的基本组成:接口的基本组成: 控制/状态信息主机主机外设外设地址数据系统总线数据选通/联络信息接口接口数据缓冲端口控制逻辑Interface The interface between a human and a computer is called a user interface. Interfaces betwee

15、n hardware components are physical 1310.1.2 I/O设备数据设备数据传送传送控制方式控制方式 输入输出的控制方式分为:程序直接控制,程序中断传送,输入输出的控制方式分为:程序直接控制,程序中断传送,直接存储器存取,直接存储器存取,I/O通道控制和外围处理机。通道控制和外围处理机。1程序直接控制方式程序直接控制方式(Programmed Direct Control) 程序直接控制程序直接控制I/O方式是方式是CPU通过执行一段程序完成输入通过执行一段程序完成输入/输出。分为无条件输入输出。分为无条件输入/输出和(条件)查询式输入输出和(条件)查询式输入

16、/输出。输出。 无条件输入无条件输入/输出不需要知道输出不需要知道I/O设备的状态,直接用输入设备的状态,直接用输入输出指令完成输入输出指令完成输入/输出。输出。 例如,读入某开关的状态,使某指示灯亮例如,读入某开关的状态,使某指示灯亮/灭,使喇叭发出灭,使喇叭发出声音,等。声音,等。 查询式输入查询式输入/输出(条件输入输出(条件输入/输出)是在数据传送前,必输出)是在数据传送前,必须先查询须先查询I/O设备的状态。只有当设备的状态。只有当I/O设备的状态为设备的状态为Ready时,时,才能够用输入输出指令完成数据的输入才能够用输入输出指令完成数据的输入/输出。输出。 由于由于I/O设备设备

17、的速度远比的速度远比CPU低。而且二者又低。而且二者又是异步工作的,是异步工作的,往往需要花费大往往需要花费大量的量的CPU时间进时间进行查询,效率很行查询,效率很低。低。Y预置传送参数启动外设取外设状态外设准备好?传送1次数据修改传送参数传送完否?结束NNYCPU与与I/O设备设备之间是串行工之间是串行工作的。作的。 程序查询式输入程序查询式输入/输输出方式的工作过程:出方式的工作过程: 查询查询15Early computers performed I/O by waiting in a loop for the peripheral to become ready. Engineers

18、thus arranged for the peripherals to interrupt the CPU. This was a waste of time for programs that had other tasks to do. Also, if the program attempted to perform those other tasks, it might take too long for the program to check again, resulting in loss of data.2程序中断传送方式程序中断传送方式(Programmed Interru

19、pt Transfer)Hardware interrupts were introduced as a way to avoid wasting the processors valuable time in polling loops, waiting for external events. 16 程序中断传送方式是程序中断传送方式是CPU在启动在启动I/O设备后,就可以执行设备后,就可以执行其他程序。其他程序。当当I/O设备准备好后,主动向设备准备好后,主动向CPU发出中断请求。发出中断请求。 CPU响应中断后,暂时停止正在运行的程序,转而执行一响应中断后,暂时停止正在运行的程序,转而

20、执行一个中断服务程序,完成输入个中断服务程序,完成输入/输出或其他服务。输出或其他服务。处理完后再返回继续执行原来的程序。处理完后再返回继续执行原来的程序。 CPU与与I/O设备之间是并行工作的,效率很高,但不适用设备之间是并行工作的,效率很高,但不适用于高速设备的成组数据输入于高速设备的成组数据输入/输出。输出。The interrupts had to be prioritized, because the CPU can only execute code for one peripheral at a time, and some devices are more time-criti

21、cal than 173直接存储器存取方式直接存储器存取方式(Direct Memory Access)DMA是I/O设备设备与主存储器之间主存储器之间由硬件组成硬件组成的直接数据通路直接数据通路。 DMA方式是方式是CPU在启动将要进行在启动将要进行I/O的外部设备,并完成的外部设备,并完成DMA控制器的初始化后,就可以执行其他程序。控制器的初始化后,就可以执行其他程序。当当I/O设备准备好后,向设备准备好后,向DMA控制器发出传送请求。控制器发出传送请求。 DMA控制器用窃取处理机一个总线周期的方法完成控制器用窃取处理机一个总线周期的方法完成I/O设设备与主存储器之间的直接数据传送。备与主

22、存储器之间的直接数据传送。 当所要求的数据块传送完毕,当所要求的数据块传送完毕,DMA控制器向控制器向CPU发出中断发出中断请求。请求。CPU做一些传送后处理工作。做一些传送后处理工作。 DMA数据传送与数据传送与CPU之间是并行工作的,适用于磁盘等高之间是并行工作的,适用于磁盘等高速设备的成组数据输入速设备的成组数据输入/输出。输出。184 I/O通道控制方式通道控制方式 (I/O Channel Control) 小型机、微型机用中断方式和小型机、微型机用中断方式和DMA方式进行输入输出处理方式进行输入输出处理是有效的。大型机的外部设备多,数据传输频繁。如果仍然用是有效的。大型机的外部设备

23、多,数据传输频繁。如果仍然用DMA方式有以下问题:方式有以下问题: 如果大量大量的外设都配置专用外设都配置专用的DMA控制器控制器将大幅度增加硬件大幅度增加硬件成本成本。而且还要解决多个要解决多个DMA同时访存同时访存的冲突冲突,使控制复杂化控制复杂化。 在在DMA方式下,外设由方式下,外设由CPU管理和初始化,过多占用管理和初始化,过多占用CPU时间。频繁的总线窃取会降低时间。频繁的总线窃取会降低CPU的效率。的效率。A channel is an independent hardware component that coordinates all I/O to a set of cont

24、rollers or devices. 通道通道(I/O Channel)是计算机系统中代替是计算机系统中代替CPU控制外设的控制外设的独立部件,能执行有限的独立部件,能执行有限的I/O指令(通道命令)。指令(通道命令)。19 通道能独立地执行用通道命令通道命令编写的输入输出控制程序输入输出控制程序,产生相应的控制信号控制信号送给由它管辖的设备控制器设备控制器,完成复杂的输入输出过程输入输出过程。 通道是一种通用性和综合性都较强的输入输出方式通用性和综合性都较强的输入输出方式,代表了现代计算机组织向功能分布方向发展的初始发展阶段现代计算机组织向功能分布方向发展的初始发展阶段。 通道有自己的简单

25、指令系统简单指令系统,并能实现指令所控制的操作。但仅仅是面向外部设备的控制和数据的传送。通道要在通道要在CPU的的I/O指令指挥下启动、停止或改变工作状态指令指挥下启动、停止或改变工作状态。In computer science, channel I/O is a generic term that refers to a high-performance input/output (I/O) architecture that is implemented in various forms on a number of computer architectures, especially o

26、n mainframe computers. 20CPUMM BUS通道通道CUCUDDDCUCUDDDDCUD设备控制器设备控制器I/O设备设备 采用通道方式组织采用通道方式组织I/O系统,多为系统,多为 主机主机-通道通道-设备控制器设备控制器- I/O设备四级连接方式。设备四级连接方式。 一个主一个主机可连接机可连接几个通道,几个通道,每个通道每个通道又可连接又可连接多台多台I/O设备。设备。215外围处理机方式外围处理机方式 (Peripheral Processor) 外围处理机外围处理机的结构接近结构接近一般的处理机处理机,甚至就是一般的完整完整的小型计算机小型计算机或微型计算机微

27、型计算机。外围处理机外围处理机基本上独立于主机工作独立于主机工作。它可完成I/O通道所要完成的I/O控制控制,还可完成码制变换码制变换、格式处理格式处理,数据块的检数据块的检错、纠错纠错等操作;可具有相应的运算处理部件、缓冲部件,还可形成I/O程序所必需的程序转移手段。 在某些大型、巨型计算机系统中,设置多台外围处理机,在某些大型、巨型计算机系统中,设置多台外围处理机,分别承担分别承担I/O控制、通信、维护、诊断等任务。控制、通信、维护、诊断等任务。 有了外围处理机后,计算机系统结构从功能集中式发展为有了外围处理机后,计算机系统结构从功能集中式发展为功能分散的分布式系统。功能分散的分布式系统。

28、CPUMM BUS外围处理机外围处理机CUCUDDDCUCUDDDDCUD22Homework 补充题1.What is the difference between isolated I/O and memory-mapped I/O? What are the advantages and disadvantages of each other?10 -1, 3, 8, 23测验 3 参考答案 设控制器采用微程序控制,有92个微命令,直接两地址指令14条及三地址指令15条。CPU结构如下图一某计算机的指令系统有零地址指令16条,一地址指令31条,解释,问最多可能有多少条微指令最多可能有多少

29、条微指令?分析控制存储器控制存储器的容量容量。MDRinPCout地址总线数据总线PCinAd(IR)outMDRoutMARinALURiYZYinZinRiinRioutZoutALUinALU控制+-PCMARMDR+1IRinIR写出指令MOV R4, R2在指令分析和执行阶段发出的控制信号(不包括取指令)。 表示间接寻址。控制法。如果每个零地址指令需要2条微指令解释,一地址指令需要3条微指令解释,两地址指令需要5条微指令解释,三地址指令需要8条微指令解:操作表达式为: (R2)(R4)CPU结构如下图一 、(、(20分)分)MDRinPCout地址总线数据总线PCinAd(IR)ou

30、tMDRoutMARinALURiYZYinZinRiinRioutZoutALUinALU控制+-PCMARMDR+1IRinIR写出指令MOV R4, R2在指令分析和执行阶段发出的控制信号(不包括取指令)。 表示间接寻址。指令分析和执行阶段发出的控制信号:R2OUT,MDRIN,R4OUT,MARIN,W26一一、(20分)某计算机有零地址指令16条,一地址指令31条,两地址指令14条及三地址指令15条。 设控制器采用微程序控制微程序控制,有92个微命令微命令,直接控制法。如果每个零地址指令需要2条微指令解释,一地址指令需要3条微指令解释,两地址指令需要5条微指令解释,三地址指令需要8条

31、微指令解释,问最多可能有多少条微指令最多可能有多少条微指令?分析控制存储器控制存储器的容量的容量。测验 3 参考答案解:微指令可能有 = 162+313+145+158 = 32+93+70+120 = 315条控制存储器的字数为512 ,微指令的顺序控制字段=9 bit微指令的操作控制字段为92 bit微指令字长=9+92 = 101 bit控制存储器的容量=512101 bit27二、(共20分)设控制器采用微程序控制微程序控制,控制存储器容量控制存储器容量为2K50bit,影响微程序转移的条件条件有5个。问微指令微指令的各个字段各个字段分别为几位分别为几位?若采用字段直接编码法字段直接编

32、码法,每个小字段每个小字段3位位,最多可最多可以有多少个微命令以有多少个微命令?微指令字长=50 bit根据控存有2K字, 微指令的顺序控制字段=11 bit5个转移条件,若采用编码法,需要3位。微指令的操作控制字段=50113= 36 bit每个小字段3位,分成12个小字段。如果每个小字段都表示7个微命令,则最多可以有127=84个微命令解1:28二、(共20分)设控制器采用微程序控制微程序控制,控制存储器容量控制存储器容量为2K50bit,影响微程序转移的条件条件有5个。问微指令微指令的各个字段各个字段分别为几位分别为几位?若采用字段直接编码法字段直接编码法,每个小字段每个小字段3位位,最

33、多可最多可以有多少个微命令以有多少个微命令?微指令字长=50 bit根据控存有2K字, 微指令的顺序控制字段=11 bit5个转移条件,若采用直接控制,需要5位或者: 微指令的操作控制字段=50115= 34 bit分成11个3位的小字段和1个1位的小字段。如果每个小字段都表示7个微命令,最多可以有117+1=78个微命令解2:CPT1T2(rs1)ALUALUPCPCABPC+1PCALUALUGRDBDRALUDRDRALUDRDBDBIRALUARARABrs1GRResetimm/dispALUrs,rdGR程序计数器PC指令寄存器IR指令译码器ID微 操 作 控制 信 号 形成部件脉

34、冲源启 停线路时序信号产生部件ALU通用寄存器组GRFlag数据寄存器DR地址寄存器ARCLK2DBABCB主存储器(rs)ALUOPimm/disprs1rs,rdCLK+ADSRW /IOM /-三三CPU结构如教材结构如教材122页图页图66,30三(共20分)CPU结构结构如教材122页图66,写出指令指令 AND AC,X 在指令分析指令分析和执行阶段执行阶段发出的控制信控制信号号(不包括取指令)。X是某一存储单元的地址,在指令的disp字段中。AC是累加器(在通用寄存器组中)。该指令的操作表达式为: (AC)(X)AC解:指令分析阶段:把操作数地址送到存储器地址寄存器AR,取数阶段

35、: 将AR中的地址送上地址总线AB,发访存控制信号,等待一段时间后从数据总线DB 将取来的数送到存储器数据寄存器DR执行阶段:将AC中的数与DR中的数送到ALU进行与运算,结果送到AC ,置标志寄存器CPT1T2(rs1)ALUALUPCPCABPC+1PCALUALUGRDBDRALUDRDRALUDRDBDBIRALUARARABrs1GRResetimm/dispALUrs,rdGR程序计数器PC指令寄存器IR指令译码器ID微 操 作 控制 信 号 形成部件脉冲源启 停线路时序信号产生部件ALU通用寄存器组GRFlag数据寄存器DR地址寄存器ARCLK2DBABCB主存储器(rs)ALU

36、OPimm/disprs1rs,rdCLK+ADSRW /IOM /-三三CPU结构如教材结构如教材122页图页图66,指令指令 AND AC,X 分析分析和执行阶段执行阶段32三(共20分)CPU结构结构如教材122页图66,写出指令指令 AND AC,X 在指令分析指令分析和执行阶段执行阶段发出的控制信控制信号号(不包括取指令)。X是某一存储单元的地址,在指令的disp字段中。AC是累加器(在通用寄存器组中)。该指令的操作表达式为: (AC)(X)AC解:指令分析阶段发出的控制信号:dispALU,“+”,ALUAR,取数阶段发出的控制信号:ARAB,ADS, , ,DBDR0/RW1/I

37、OM执行阶段发出的控制信号:rsGR,(rs)ALU,DRALU,“”,rdGR,ALUrd,置标志寄存器33四 (共10分) 某CPU的主频为10MHz,若已知每个机器周期平均含4个时钟周期,该机的平均指令执行速度为1 MIPS,试求该机的平均指令周期及每个指令周期含几个机器周期?若改用时钟周期为0.4s的CPU芯片,则计算机的平均指令执行速度是多少MIPS?若要得到平均每秒80万次的指令执行速度,则应采用主频为多少的CPU芯片?(1) 主频= 10MHz,解:时钟周期TC =1/10MHz =0.1106 S = 0.1s机器周期TM = 40.1s= 0.4s平均指令周期TI = 1/1 MIPS = 1s每个指令周期含2.5个机器周期。34四 (共10分) 某CPU的主频为10MHz,若已知每个机器周期平均含4个时钟周期,该机的平均指令执行速度为1 MIPS,试求该机的平均指令周期及每个指令周期含几个机器周期?若改用时钟周期为0.4s的CPU芯片,则计算机的平均指令执行速度是多少MIPS?若要得到平均每秒80万次的指令执行速度,则应采用主频为多少的CPU芯片?(2) 若改用时钟周期为0.4s的CPU芯片,则解:机器周期TM = 40.4s = 1.6s平均指令周期TI =2.51.6s = 4s平均指令执行速度= 1/4s = 0.25 MIPS35四 (共10分)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论