• 237.79 KB
  • 2022-04-22 11:25:38 发布

《微机接口与通讯技术》课后习题参考答案.docx

  • 14页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'《微机接口与通讯技术》课后习题参考答案习题一1.什么是接口?接口就是微处理器CPU与外部世界的连接部件,是CPU与外界进行信息交换的中转站。2.为什么要在CPU与外设之间设置接口?在CPU与外设之间设置接口主要有4个原因:(1)CPU与外设二者的信号不兼容,包括信号线的功能定义、逻辑定义和时序关系(2)CPU与外设的速度不匹配,CPU的速度快,外设的速度慢(3)若不通过接口,而由CPU直接对外设的操作实施控制,会使CPU处于穷于应付与外设打交道之中,大大降低CPU的效率(4)若外设直接由CPU控制,会使外设的硬件结构依赖于CPU,对外设本身的发展不利。3.微型计算机的接口一般应具备那些功能?微机的接口一般有如下的几个功能:(1)执行CPU命令的功能:CPU将对外设的控制命令发到接口电路中的命令寄存器(命令口)中,在经分析去控制外设(2)返回外设状态的功能:通过状态寄存器(状态口)完成,包括正常工作状态和故障状态(3)数据缓冲的功能:接口电路中的数据寄存器(数据口)对CPU于外设间传送的数据进行中转(4)设备寻址的功能:CPU某个时刻只能和一台外设交换数据,CPU发出的地址信号经过接口电路中的地址译码电路来选中I/O设备(5)信号转换的功能:当CPU与外设的信号功能定义、逻辑关系、电平高低及工作时序不兼容时接口电路要完成信号的转换功能(6)数据宽度与数据格式转换的功能:由于CPU处理的数据都是并行的,当外设采用串行传送方式时,接口电路就要完成串、并之间的转换,并进行数据格式的转换。4.接口技术在微机应用中起的作用?随着计算机技术的高速发展,计算机的应用越来越广泛。然而,在微机系统中,微处理器的强大功能必须通过外部设备才能实现,而外设与微处理器之间的信息交换和通信又是靠接口来实现的,所以,接口技术成为了一门关键技术,它直接影响微机系统的功能和微机的推广应用。5.接口电路的硬件一般由哪几部分组成?接口电路的硬件一般由以下几部分组成:(1)基本逻辑电路:包括命令寄存器、状态寄存器和数据缓冲寄存器,是接口电路中的核心(2)端口地址译码电路:实现设备的选择功能(3)供选电路:根据不同任务和功能要求而添加的功能模块电路。6.接口电路的软件控制程序一般包括哪几部分?接口电路的软件控制程序一般包括以下的程序段,各部分程序是相互渗透、融为一体的:(1)初始化程序段:对可编程接口芯片进行初始化编程(2)传送方式处理程序段:不同的传送方式(查询、中断、DMA方式)程序段不同(3)主控程序段:完成接口任务的程序段(4)程序终止与退出程序段:程序退出前对接口电路中硬件进行保护的程序段(5)辅助程序段:人-机对话、菜单等7.接口电路的结构有哪几种形式?接口电路的结构主要有四种:(1)固定式结构:不可编程的接口电路,结构简单、功能单一、固定(2)半固定式结构:由PAL或GAL器件构成的接口电路,功能和工作方式可以通过改写内部的逻辑表达式来改变,但逻辑表达式一旦烧入芯片,其功能和工作方式就固定下来了(3)可编程结构:其功能和工作方式可由编程指定,使用灵活、适应面广,且种类繁多(4)智能型结构:芯片本身就是一个微处理器,外设的全部管理都由智能接口完成,如I/O处理器I0809或通用单片机8.CPU与接口之间有哪几种传送数据的方式?它们各应用在什么场合?CPU与接口之间的数据传送方式主要有查询方式、中断方式和DMA方式:(1)查询方式:主要用于CPU不太忙且传送速度不高的情况下。无条件传送方式作为查询方式的一个特例,主要用于对简单I/O设备的控制或CPU明确知道外设所处状态的情况下。(2)中断方式:主要用于CPU的任务比较忙的情况下,尤其适合实时控制和紧急事件的处理(3)DMA方式(直接存储器存取方式):主要用于高速外设进行大批量数据传送的场合。9.分析和设计接口电路的基本方法是什么?分析和设计接口电路通常采用两侧分析法和硬软件结合法相结合:(1)两侧分析法:CPU一侧,主要是了解CPU的类型、它提供的数据线的宽度、地址线的宽度、控制线的逻辑定义、时序关系的特点;外P14(共14页) 《微机接口与通讯技术》课后习题参考答案设一侧,主要是了解被连接外设的外部特性及被控外设的工作过程(1)硬软件结合法:硬件设计主要是合理选用外围接口芯片、有针对性地设计附加电路;软件设计可以采用汇编语言(或高级语言)直接对低层硬件编程,也可以采用DOS系统功能调用和BIOS调用编程。2.外围接口芯片在微机接口技术中的作用如何?你所知道的外围接口芯片有那些?略。3.你认为学习接口技术的难点在哪几个方面?应如何对付?略。习题二4.什么是端口?端口是接口电路中能被CPU直接访问的寄存器。5.I/O端口的编址方式有几种?各有何特点?I/O端口的编址方式有两种——统一编址方式(存储器映象方式)和独立编址方式(I/O映象方式、专用I/O指令方式)(1)统一编址方式:从整个寻址空间中划出一部分给I/O设备,其余的给存储器,通过地址码区分操作对象是存储器还是I/O,二者的地址码不重叠。这种方式的优点是①I/O端口的编址空间大,且易于扩展②I/O指令丰富、功能齐全;缺点是①存储器的地址空间减少,达不到系统最大的寻址空间②I/O指令比独立编址方式的专用I/O指令长,译码时间长,执行速度慢(2)独立编址方式:存储单元与I/O端口分别编址,地址码重叠,通过操作码区分操作对象是存储器还是I/O。这种方式的优点是①I/O端口不占存储器的编址空间,使存储器的容量可达系统的最大寻址能力②I/O指令短、执行速度快;指令清晰、可读性强;缺点是①I/O端口地址范围一旦确定,不易扩展②I/O指令种类有限,操作单一6.设计I/O设备接口卡时,为防止地址冲突,选用I/O端口地址的原则是什么?为了避免端口地址发生冲突,在选择I/O端口地址时一般要遵循以下的原则:(1)凡是被系统配置所占用了的地址一律不能使用(2)原则上讲,未被占用的地址,用户可以使用,但对计算机厂家申明保留的地址,不要使用,否则会发生I/O端口地址重叠和冲突(3)一般,用户可使用300H~31FH地址,这是IBM-PC微机留作实验卡的,用户可以使用。为了避免与其他用户开发的插件板发生地址冲突,最好采用地址开关。7.I/O端口地址译码电路在接口电路中的作用是什么?I/O端口地址译码电路的作用就是把地址和控制信号进行逻辑组合,从而产生对接口芯片的选择信号。8.在I/O端口地址译码电路中常常设置AEN=0,这有何意义?AEN=1,表示正在进行DMA操作,在I/O端口地址译码电路中,常常令AEN=0时,译码输出才有效,这样做的目的是为了避免在DMA操作周期中,由DMA控制器对这些以非DMA方式传送的I/O端口执行DMA方式的传送。9.若要求I/O端口地址为374H,则在图2.1(b)中的输入地址线要作哪些改动?为了使I/O端口的地址为374H,图2.1(b)中地址线A2、A8后的非门去掉,而在地址线A3、A7后面加上非门。即修改后地址线A0、A1、A3、A7后有非门,其余地址线后无非门。如图所示:10.图2.2是PC机系统板的I/O端口地址译码电路,它有何特点?试根据图中地址线的分配,写出DMAC、INTR、T/C以及PPI的地址范围?在图2.2的译码电路中,不管芯片本身需要多少个端口地址,一律分配一个含有32个地址的地址范围。其中DMAC、INTR、T/C和PPI的地址范围分别是:DMAC:00H~1FH;INTR:20H~3FH;T/C:40H~5FH;PPI:60H~7FH11.在图2.4译码电路中,若要改变I/O端口地址,使其地址范围为300H~307H,则开关S0~S9应如何设置?P14(共14页) 《微机接口与通讯技术》课后习题参考答案由于AEN必须为0,所以S9一定是闭合的,若使译码输出地址范围为300H~307H,则有如下的分析:A11A10A9A8A7A6A5A4A3A2A1A0001100000000……111S8S7S6S5S4S3S2S1S0开开合合开开开开开所以,S0~S9中S5、S6和S9是闭合的,其余的开关全部断开。1.GAL器件有那些特点?采用GAL器件进行I/O地址译码有何优点?略。2.采用GAL器件设计开发一个地址译码电路的步骤和方法如何?略。3.通常所说的I/O操作是指CPU直接对I/O设备进行操作,这话对吗?这话不对,I/O操作是指I/O端口操作,即访问与I/O设备相关的端口,而不是对I/O设备直接操作。4.在独立编址方式下,CPU采用什么指令来访问端口?独立编址方式下,采用专用的I/O指令——输入/输出指令(如PC系列微机中的IN、OUT)来访问端口。5.在I/O指令中端口地址的宽度及寻址方式有哪两种?PC系列微机中,I/O指令对端口的寻址方式有两种:直接寻址和间接寻址(必须由DX间址)。直接寻址方式中,端口地址的宽度为8位,即地址范围是00H~FFH;间接寻址方式中,端口地址的宽度为16位,即地址范围是0000H~FFFFH。6.CPU从端口读数据或向端口写数据是否涉及到一定要与存储器打交道?通常所说的CPU从端口读数据或向端口写数据,仅仅是指I/O端口与CPU的累加器之间的数据传送,并未涉及数据是否传送到存储器。由于累加器只能保存一个数据,所以在实际中通常是I/O与存储器交换数据。7.I/O端口地址译码电路一般有哪几种结构形式?I/O端口地址译码电路一般有两种结构形式:固定式端口地址译码——硬件电路不改动,译码输出的地址或地址范围不变可选式端口地址译码——电路中有若干个DIP开关,硬件电路不改动,只改变开关的状态,就可以使译码输出的地址或地址范围发生变化。8.I/O地址线用作端口寻址时,高位地址线和低位地址线各作何用途?如何决定低位地址线的根数?CS一般情况下,高位地址线与控制信号线进行逻辑组合,经译码电路产生I/O接口芯片的片选信号——实现片间选择;低位地址线不参与译码,直接与I/O接口芯片的地址线相连——实现I/O接口芯片的片内端口选择。低位地址线的根数由I/O接口芯片内部的端口数量决定,如果I/O接口芯片内部有2n个端口(其引脚上一定有n根地址线),那么,寻址端口时,低位地址线的根数就是n。9.可选式I/O端口地址译码电路一般由哪几部分组成?可选式I/O端口地址译码电路一般由地址开关(DIP开关)、译码器、比较器或异或门组成。10.采用GAL器件设计地址译码电路时,其核心是编写GAL器件输入源文件(即GAL设计说明书)。现利用GAL16V8设计一个扩展系统的地址译码电路,要求该系统的I/O端口地址范围分别为300H~31FH和340H~35FH;存储器地址范围为D0000H~EFFFFH。试编写GAL16V8的编程输入源文件。略。Y5Y5Y511.若将图2.3中DIP开关状态设置为:S2和S1合上(ON);S3和S0断开(OFF),试指出74LS138输出端的地址范围,并与图中在DIP开关原来的状态下输出端所产生的地址范围进行比较,有何变化?如果S2和S1合上(ON);S3和S0断开(OFF),有效时,各位地址线的状态如下:A9A8A7A6A5A4A3A210010101S3S2S1S0开合合开Y5Y5所以,这种开关状态下,的地址范围是254H~257H;而DIP开关在原来的开关状态下,的地址范围是314H~317H。这两个地址范围A9~A6的状态不同,因为A9~A6的状态是由开关的状态决定的;而二者的A5~A2是相同的,因为它们不受开关状态的影响。习题三P14(共14页) 《微机接口与通讯技术》课后习题参考答案1.计数、定时与频率、声音以及音乐之间有什么关系?定时和计数的本质是相同的,当计数的基本脉冲是标准的时间单元时,计数就变成了定时。定时输出脉冲的周期的倒数就是频率。由定时输出的脉冲可以产生声音,脉冲的频率就决定了声音的频率。脉冲频率高,声音的音调高(听起来尖锐);脉冲频率低,声音的音调低(听起来低沉)。而由频率不同、持续时间不同的声音就可以产生动听的音乐。2.微机系统的定时有哪两类?何谓时序配合?微机系统中的定时分为内部定时和外部定时两类。内部定时是指计算机本身运行的时间基准或时序关系,是用户无法更改的。外部定时是指外部设备实现某种功能时,本身所需要的一种时序关系,需要用户根据外设的要求进行安排。时序配合是指用户在考虑外设与CPU连接时,不能脱离计算机的定时要求,即以计算机的时序关系为依据来设计外部定时机构,以满足计算机的时序要求。3.微机系统中的外部定时有哪两种方法?其特点如何?微机系统中的外部定时有软件定时和硬件定时两种方法。软件定时:利用CPU执行指令需要一定时间的特点产生延时。这种方法不需增加硬件设备,只需编制延时程序即可;但是它降低了CPU的效率,浪费了CPU的资源,而且由于同样的延时程序在不同计算机上运行的时间会不同,所以通用性比较差。4.8253定时/计数器有那些特点?8253是一个减1的定时/计数器(逆计数器),它内部有3个相互独立的16位减1计数通道,每个通道有自己独立的计数脉冲输入信号(CLK)、门控信号(GATE)和计数/定时到的输出信号(OUT),每个通道有6种工作方式,1个通道最多可以计65536个脉冲。5.8253初始化编程包括哪两项内容?在对8253进行始化编程时,首先向命令寄存器中写入方式字,选择计数通道、工作方式、计数初值的长度及写入顺序、计数码制。然后按方式字的要求向选定的计数通道中写入计数初值。6.8253有哪几种工作方式?区分不同工作方式的特点体现在哪几个方面?为什么3方式使用最普遍?8253有6种工作方式——方式0~方式5。区分不同工作方式的特点主要体现在以下的4个方面:(1)启动计数器的触发方式不同(2)计数过程中门控信号GATE对计数操作的控制作用不同(3)计数/定时到时输出端OUT输出的波形不同(4)在计数过程中,写入新的计数初值的处理方式不同3方式由于具有自动重新装载计数初值,能输出重复波形,且输出波形的高低电平比为1:1或近似1:1(方波或近似方波),所以在实际中应用最广泛。7.何谓日时钟?日时钟是指对一天的时间进行统计,判断一天(24小时)的时间是否已到。8.利用8253进行日时钟计时的计时单位是什么?CPU采用什么技术把这些计时单位进行累加?利用8253进行日时钟计时的计时单位是在系统中,设置了两个对计时单位进行统计的字单元TIMER_HI(高字单元)和TIMER_LO(低字单元),8253产生的周期为54.9254ms的方波申请中断,CPU在中断服务程序中通过对两个字单元组成的双字单元进行加1操作来实现对计时单位的统计。9.8253通道0的定时中断是硬中断(8号中断),它不能被用户调用,当用户对系统的时间进行修改时,需采用软中断INT1AH。试问这两种中断有何关系?8253通道0定时中断的服务程序中实现对双字计时单元的加1操作,而软中断INT1AH完成的功能是将这双字单元的内容读出,保存在两个字寄存器中,其中,TIMR_HI单元的内容送入CX,TIMER_LO单元的内容送入DX中。10.利用8253作为波特率发生器,当CLK=1.1931816MHz,波特因子为16时,要求产生4800波特的传输速率,试计算8253的定时常数。由于,所以8253输出的频率应该是,由此可计算出8253的定时常数:习题四11.采用DMA方式为什么能实现高速传送?DMA传送方式能够实现高速数据传送主要有两个原因:P14(共14页) 《微机接口与通讯技术》课后习题参考答案(1)它为两个存储介质提供了直接传输通道,不象CPU控制的传送那样要通过内部寄存器中转。(2)用硬件取代了软件,它直接发出对两个介质的选中信号及其读写控制信号,而不是通过执行指令来控制传送2.DMA方式传送的一般过程如何?DMA方式在传送之前,要对DMA控制器进行初始化编程,设置诸如传送方向、内存首址、数据块大小等信息,而传送过程一般可分为4个阶段:(1)申请阶段:外设向DMA控制器发出DREQ信号请求DMA服务,DMA控制器向CPU发出HRQ信号,请求占用总线(2)响应阶段:CPU向DMA控制器发出HLDA信号,将总线控制权让给DMA控制器,DMA控制器接管总线(3)数据传送阶段:DMA控制器发出DACK信号,选中I/O设备;发出内存地址,选中存储单元,并根据初始化时设定的传送方向给I/O设备和存储器发出读写控制信号,数据由源介质直接传送到目的介质(4)传送结束阶段:传送了指定长度的数据块后,或收到外部强制结束的控制信号(EOP)时,外设、DMA控制器相继撤除DREQ、HRQ信号,CPU撤除HLDA信号,总线控制权归还CPU。3.什么是DMA方式的操作类型和操作方式?DMA方式一般有哪几种操作类型和操作方式?DMA方式的操作类型是指进行DMA操作的种类,一般有3种:(1)数据传送:将源介质中的数据传送到目的介质中,包括DMA读(M®I/O)和DMA写(I/O®M)(2)数据校验:对数据块内部的每个字节进行某种校验,而不进行数据传送(不发出读写控制信号)(3)数据检索:也不进行数据传送,而是在指定的内存区内查找某个关键字节或某几个关键数据位是否存在DMA方式的操作方式是指在进行DMA操作时,每次所操作的字节数,不同的操作方式释放总线的条件不同。操作方式一般有以下3种:(1)单字节方式(单一方式):每次取得总线控制权只操作一个字节就释放总线,下个字节的操作要重新申请(2)连续方式(块字节方式):只要DMA操作一开始,就一直占用总线,直到全部操作完毕。在操作过程中,即使DMA请求信号无效,也只是暂停操作,将总线暂时挂起,而不释放,待DREQ有效后再继续操作(3)请求方式(询问方式):这种方式是否释放总线取决于DREQ信号,若DREQ保持有效,则占用总线,进行DMA操作;若DREQ变为无效,就释放总线4.DMA控制器在微机系统中有哪两种工作状态?其工作特点如何?DMA控制器在微机系统中有主动工作状态和被动工作状态。主动工作状态:在DMA操作期间,DMAC控制总线,控制数据在两个存储介质之间直接传送被动工作状态:非DMA操作期间,DMAC受CPU的控制,此时它主要有两个工作,一是检测片选信号,看CPU是否对它进行读写控制;二是检测DMA请求信号,看外设是否有DMA操作请求。5.DMA控制器的地址线和读写控制线与一般的接口控制芯片的相应信号线有什么不同?由于DMA可以作为系统的主控器,所以在地址线和读写控制线的设置上与一般的接口控制芯片有所不同,主要体现在以下几个方面:(1)地址线中的端口选择信号线是双向的,被动态时接收CPU发出的低位地址,实现片内端口选择;主动态时发出内存地址的低位。如:8237A-5的A0~A3IOWIOR(2)除了端口选择信号线,还有其他的地址线,输出方向,用于主动态发出内存地址。如:8237A-5的A4~A7(发出内存地址的A4~7),DB0~7(送出内存地址的A8~15)MEMRMEMWIOWIOR(3)读写控制信号中的、是双向的,被动态时接收CPU的读写信号;主动态时向I/O发出读写控制信号(4)除了和以外,读写控制信号还设置了和,输出方向,用于在主动态时向存储器发出读写控制信号6.可编程DMA控制器8237A-5的操作功能由它的寄存器内容来体现,请指出它有哪些寄存器,其功能如何?8237A-5的内部寄存器有以下几种:(1)基地址寄存器:16位,每个通道都有。寄存内存首址,写入后不变,自动预置方式中用于为当前地址寄存器重新装入初值(2)当前地址寄存器:16位,提供当前操作的内存单元的地址,具有自动修改的功能(3)基字节计数器:16位,每个通道都有。寄存操作数据块的大小(N-1),写入后不变,自动预置方式中用于为当前字节计数器重新装入初值(4)当前字节计数器:16位,指示当前还有多少字节没有操作,具有自动减1的功能(5)命令寄存器:用于设置该片8237A-5的工作条件及相关信息(6)状态寄存器:寄存各通道是否已完成DMA操作及是否有未处理的DMA请求(7)请求寄存器:用于软件发出DMA请求(8)屏蔽寄存器:用于控制各通道是否允许DMA请求(9)方式寄存器:用于设置各通道具体的工作方式(10)暂存寄存器:在存储器到存储器的数据传送方式中,用于暂存由源单元中读出的数据CSIOW7.什么叫软命令?8237A-5有几个软命令?P14(共14页) 《微机接口与通讯技术》课后习题参考答案所谓软命令就是只要对特定的地址进行一次写操作(即、及内部寄存器地址同时有效),命令就生效,与写入的具体数据无关。8237A-5有3条软命令:清先/后触发器软命令、总清除软命令、清屏蔽寄存器软命令。1.什么是DMA页面地址寄存器?它的作用如何?由于DMAC8237A-5只能提供内存地址的低16位,而实际中内存地址可能是20位、24位或32位的,等等,这样就要在DMA系统中配置寄存器组,由这些寄存器组提供存储器的高位地址,这些寄存器组就是页面地址寄存器。它的作用是提供存储单元的页面地址,即高位地址。2.采用DMA方式在内存与I/O设备之间传送数据时,DMA控制器8237A-5怎样实现对I/O设备的寻址?DMA控制器8237A-5提供DACK信号给I/O设备,取代其地址选择信号,使申请DMA传送并被允许的设备在DMA传送过程中一直是有效设备。即:用DACK信号取代了芯片选择和片内端口选择信号。3.DMA控制器8237A-5在系统中如何生成访问内存的有效地址?内存地址是通过地址线传送的,如在PC机系统中,20位物理地址由几部分构成:A0~7:由8237A-5的A0~7引脚直接发出A8~15:由8237A-5的DB0~7引脚发出,然后由外部地址锁存器锁存后提供A16~19:由页面地址寄存器74LS670提供A4~74.IBM-PC系列微机中DMA系统的配置情况有哪两种?在IBM-PC系列微机中DMA系统有单片DMAC和双片DMAC两种配置。单片系统:支持4个通道的8位数据传送。每个通道有64KB的计数能力,有一个能提供4位地址的页面地址寄存器,所以寻址能力达到1MB双片系统:支持7个通道的数据传送,其中3个通道支持8位传送,4个通道支持16位传送。每个通道有64KB的计数能力,系统配置了一个能提供8位地址的页面地址寄存器,所以寻址能力达到16MB。5.用户利用PC微机的DMA系统资源进行DMA传送时,是否要求用户对8237A-5的16个寄存器全部进行编程?为什么?一般需要对8237A-5的哪几个寄存器进行编程?用户利用PC微机的DMA系统资源进行DMA传送时,并不需要也不能对16个寄存器全部进行编程。因为系统在ROM-BIOS的初始化测试阶段已对8237A-5的命令寄存器进行了设置,不允许用户进行修改。用户在使用时一般只要根据需要对方式寄存器、基(当前)地址寄存器、基(当前)字节计数器、屏蔽寄存器(单个通道)进行编程,并用软命令清除先/后触发器即可。习题五6.什么是中断?是指CPU在正常运行程序时,由于内部/外部事件或由程序预先安排的事件,引起CPU暂时停止正在运行的程序,转到为该内部/外部事件或预先安排的事件服务的程序中去,服务完毕,再返回去继续运行被暂时中断的程序,这个过程称为中断。7.可屏蔽中断处理的一般过程是什么?可屏蔽中断的处理过程一般可分为4个阶段:(1)中断申请:外设向CPU发出中断申请信号,CPU检测到有效的INTR,且无DMA请求、IF=1,当前指令执行完毕就进入响应阶段INTA(2)中断响应:CPU通过总线控制器发出两个连续的中断响应信号(2个负脉冲)组成中断响应周期。在中断响应周期中,CPU取得中断类型号n,将程序状态字(PSW)及断点的地址(CS和IP)依次入栈保护。再查中断向量表,将(4*n)®IP;(4*n+2)®CS,进入中断服务阶段(3)中断服务:CPU执行中断服务程序,为中断源服务(4)中断返回:当执行到中断服务程序中的IRET指令时,将堆栈栈顶的三个字单元内容弹出,依次送给IP、CS、PSW,CPU返回到原来的程序去执行。8.什么是中断优先级?设置中断优先级的目的是什么?中断优先级是指,中断源被响应和处理的优先等级。设置优先级的目的是为了在有多个中断源同时发出中断请求时,CPU能够按照预定的顺序(如:按事件的轻重缓急处理)进行响应并处理。9.什么是中断嵌套?是指CPU正在执行一个中断服务程序时,有另一个优先级更高的中断提出中断请求,这时会暂时挂起当前正在执行的级别较低的中断源的服务程序,去处理级别更高的中断源,待处理完毕,再返回到被中断了的中断服务程序继续执行,这个过程就是中断嵌套。10.什么是中断向量?它是如何装入中断向量表的?中断向量是中断服务程序的入口地址,一个中断向量由4个字节组成,它包括中断服务程序的段首址和偏移地址。中断向量并非常驻内存,而是由程序装入中断向量表中的。系统配置和使用的中断所对应的中断向量由系统软件负责装入;系统若未配置系统软件(如单板机系统),或用户自定义的中断向量,由用户自行装入。11.什么是中断类型号?它的作用是什么?中断类型号是系统为每一个中断源分配的代号,它是8位的,与系统的中断源一一对应。P14(共14页) 《微机接口与通讯技术》课后习题参考答案中断类型号负责引导CPU找到中断服务程序的入口点。通过中断类型号查中断向量表可得到中断向量(中断服务程序入口地址),其中:物理地址为4*n的单元是中断服务程序入口点的偏移地址;物理地址为4*n+2的单元是中断服务程序的段首址。1.不可屏蔽中断和可屏蔽中断各有何特点?其用途如何?不可屏蔽中断(NMI):CPU不能屏蔽,即:无论IF的状态如何,CPU收到有效的NMI必须进行响应;NMI是上升沿有效;中断类型号固定(为2);它在被响应时无中断响应周期。不可屏蔽中断通常用于故障处理(如:协处理器运算出错、存储器校验出错、I/O通道校验出错等)可屏蔽中断(INTR):CPU可以通过设置IF的状态屏蔽它,若IF=1,CPU响应,IF=0,CPU不响应;INTR高电平有效;它需要中断响应周期;中断类型号由中断控制器在中断响应周期中提供给CPU。可屏蔽中断主要用于普通I/O设备请求与CPU进行数据交换。2.IBM-PC微机的中断系统由哪几部分构成?IBM-PC微机的中断系统由硬件中断(外部中断)和软件中断(内部中断)组成。硬件中断又分为可屏蔽中断INTR和不可屏蔽中断(NMI);软件中断有双字节指令形式的中断(ROM-BIOS中断、DOS中断和未定义自由中断)和几种特殊类型的中断(除法溢出中断、单步中断、断点中断、溢出中断)。3.所谓DOS系统功能调用是指哪一个软中断?试举出一些常用的设备管理和文件管理的DOS功能调用。DOS系统功能调用是指中断类型号为21H的软中断指令INT21H。例如:功能号为01H,对键盘管理,输入一个字符;功能号为0AH,对键盘管理,输入一个字符串;功能号为02H,对显示器管理,输出一个字符;功能号为09H,对显示器管理,输出一个字符串;功能号为3CH,对文件管理,建立一个文件;功能号为3DH,对文件管理,打开一个文件;功能号为3EH,对文件管理,关闭文件;功能号为3FH,对文件管理,读文件;功能号为40H,对文件管理,写文件。4.试比较软中断和硬中断不同的特点。软中断和硬中断的不同主要体现在以下几个方面:软中断硬中断(INTR)是否有随机性、突发性否是是否有中断响应周期无有中断类型号的提供方法固定或由指令提供由中断控制器提供是否可屏蔽(受IF影响)不可屏蔽可屏蔽硬中断中的不可屏蔽中断NMI除了具有随机性和突发性之外,其余特点同软中断。5.可编程中断控制器8259A协助CPU处理哪些中断事务?8259A协助CPU完成的中断事务主要有:接收和扩充外设的中断请求;进行中断请求的屏蔽与开放控制;对中断源进行优先级排队管理;中断被响应时,提供该中断源的中断类型号。6.8259A具有哪些工作方式和中断操作功能?指出与这些功能相对应的命令字(ICW/OCW)的内容?8259A的工作方式有以下几种:(1)引入中断请求的方式:有边沿触发和电平触发两种;中断服务方式有向量式中断和查询式中断两种;(2)与系统总线的连接方式:缓冲方式和非缓冲方式两种;(3)屏蔽中断的方式:通常屏蔽和特殊屏蔽两种方式;(4)优先级排队的方式:固定优先级和循环优先级(优先级轮换)两种,循环优先级又分为指定轮换和自动轮换两种;(5)中断结束的方式:自动结束方式和非自动结束方式两种8259A的中断操作功能有以下几个:(1)设置中断触发方式、选择8259A芯片的数目——由ICW1完成;(2)设置中断类型号的高五位——由ICW2完成;(3)设置级联方式具体的连接情况(主片的哪些中断申请端连有从片;从片与主片的哪个中断申请端相连)——由ICW3完成;(4)设置特定完全嵌套方式、缓冲方式和中断结束方式——ICW4完成;(5)设置对各中断源的屏蔽与开放状态——由OCW1完成;(6)设置优先级轮换及发中断结束命令——由OCW2完成;P14(共14页) 《微机接口与通讯技术》课后习题参考答案(1)设置特殊屏蔽方式、查询式中断的服务方式、选择要读出的寄存器——由OCW3完成;1.在什么情况下,才要求用户对8259A进行初始化?一般在没有配置完善的操作系统的单板微机系统中,才需要对8259A进行初始化。另外,若通过插件板扩展中断系统,附加的8259A由于系统软件并未对它进行初始化,所以用户要写入它的初始化程序。2.如何对8259A进行初始化编程(包括单片使用和双片使用)?在单片8259A系统中,初始化时按顺序依次写入ICW1、ICW2、和ICW4;在双片8259A系统中,初始化时要按顺序依次写入ICW1、ICW2、ICW3和ICW4。3.什么是中断响应周期?在中断响应周期中CPU和8259A一般要完成哪些工作?LOCKINTAINTACPU收到有效的INTR信号,若IF=1,且无DMA请求,当前指令执行完毕,就通过总线控制器发出连续的两个中断响应信号()组成一个中断响应周期。INTALOCK在第1个负脉冲中,CPU发出有效的总线锁定信号,封锁总线,防止其他主控器占用总线;8259A经判优后将IRR的相应位清0,ISR的对应位置1。INTA在第2个负脉冲中,CPU撤除总线锁定信号,ALE信号也变为无效,允许数据线传送数据;8259A将被响应中断源的中断类型号送给CPU。若8259A工作于自动结束方式,在第2个负脉冲的后沿,8259A还要清除ISR中在第1个负脉冲里置1的位。4.用户利用PC微机的中断系统资源进行中断传送时,要求用户对8259A的哪些命令进行编程使用?用户利用PC微机的中断系统资源进行中断传送时,对8259A的编程主要是写入OCW1(开放或屏蔽某些中断级)和OCW2(发中断结束命令)。5.何谓中断向量修改?修改中断向量的方法和步骤如何?在实际应用中,用户借用系统的中断资源(中断类型号)来运行自己的中断服务程序时,需要将中断向量表中原来的中断向量修改为自己中断服务程序的入口地址,这就是中断向量的修改。中断向量的修改方法一般是利用DOS功能调用的35H号和25H号功能,其步骤可分为以下3步:(1)保存原中断向量:用35H号功能读取原来的中断向量,保存于两个字单元中;(2)设置新的中断向量:用25H号功能将新的中断向量填入到中断向量表的相应位置(4*n~4*n+2单元中);(3)恢复原中断向量:使用完,再利用25H号功能将保存于两个字单元中的原来的中断向量重新填入到中断向量表中。6.中断结束命令安排在程序的什么地方?在什么情况下要求发中断结束命令?为什么?中断结束命令一般安排在中断服务程序中,在中断服务完成,中断返回指令(IRET)之前。在8259A工作于非自动结束方式时,要送中断结束命令。因为这种方式,即使中断已经服务完毕,ISR中的对应位也不会自动清0,这样就使得低优先级的中断和同级中断得不到应有的响应。通过发中断结束命令,将服务完的中断级在ISR中的对应位清0,以便开放同级和低级中断。IOWCS习题六7.半导体存储器通常可分为哪些类型?分类的依据是什么?半导体存储器按制造工艺分,可分为双极型和MOS型两大类;按存取方式分,又可分为随机存取存储器RAM和只读存储器ROM两大类;RAM根据存储电路的性质不同,又可分为静态RAM(SRAM)和动态RAM(DRAM),ROM按其性能不同,又可分为掩模式ROM、熔炼式可编程PROM、可用紫外线擦除、可编程的EPROM和可用电擦除、可编程的E2PROM。8.半导体存储器有哪些主要特点?有哪几项主要性能指标?半导体存储器具有体积小、速度快、耗电少、价格低的优点。半导体存储器主要有以下几个主要性能指标:(1)存储容量:存储器所能存储二进制数码的数量,即所含存储元的总数(2)存取时间(读写周期):从启动一次存储器操作到完成该操作所经历的时间(3)功耗:每个存储元消耗功率的大小(4)可靠性;对电磁场及温度变化等的抗干扰能力。9.试比较动态RAM与静态RAM的优缺点?动态RAM集成度高、功耗低、价格低;但由于它是以电容上的电荷存储信息,必须定时刷新,所以接口电路比较复杂;静态RAM速度快,但由于是用双稳电路存储信息,集成度较低、功耗较大、成本较高。10.设计存储器接口应考虑哪些主要问题?在设计存储器接口时除了要考虑存储器的地址空间外,还要考虑存储器与CPU的时序配合问题:慢速存储器要能够向CPU申请延长总线传输周期;CPU总线的负载能力:大系统中,考虑到总线驱动能力不够,需要在接口中加入驱动器/缓冲器;存储芯片的选择:选择芯片类型时根据存储信息类型的不同决定选择RAM或ROM;选择芯片具体型号时,在满足容量要求的情况下,尽量选择容量大、集成度高的芯片。P14(共14页) 《微机接口与通讯技术》课后习题参考答案1.当CPU与低速存储器接口时,通常采用什么方法进行速度匹配?举例说明。当CPU与低速存储器接口时,通常由低速存储器向CPU发出“等待申请”信号,使CPU在正常的读/写周期之外再插入一个或几个等待周期,这样就使指令的时钟周期数增加了。例如,在8086CPU的引脚上提供了一根READY信号,CPU在每个总线周期的T3时钟周期和插入的等待周期TW中检测READY,若READY=0,就在T3或当前的TW之后插入一个等待周期,在等待周期中继续检测READY信号。所以慢速存储器在与CPU接口时,只要能在T3中(CPU检测前)使READY=0,就可以让CPU延长总线传输周期。通过控制READY维持为低电平的时间长短可以控制插入等待周期的个数。2.存储芯片的选择与接口电路有何关系?挑选时应注意哪些问题?存储芯片的选用和存储器接口设计直接相关:不同类型、不同型号的芯片构成的存储器,其接口方法和复杂程度都不同。在选择时一般要根据存储器的存放对象、总体性能、芯片类型和特征等方面综合考虑。3.片选控制译码有哪几种常用方法?其中哪几种方法存在地址重叠问题?片选控制译码有线选法、全译码法、部分译码法和混合译码法。其中线选法、部分译码法和混合译码法都存在地址重叠的问题。4.用1024×1位的RAM芯片组成16K×8位的存储器,需要多少个芯片?分为多少组?共需多少根地址线?地址线如何分配?试画出与CPU的连接框图。用1024×1位的RAM芯片构成16K×8位的存储器,共需要16×8=128片;8片为一组,共分为16组;共需要14根地址线;其中低10根作低位地址,实现片内单元的选择,高4位进行译码,产生片选信号,从16组中选中一组作为当前读写操作的对象。首先进行芯片扩展,由8片1024×1位的芯片组成一个1024×8位的芯片组,除数据线之外,将一组中8个芯片的同名引脚连在一起(包括:低位地址A0~9、读写控制信号、片选信号),如图所示:然后将CPU的存储器读写控制信号与芯片组的读写控制相连;低位地址A0~9与芯片组的低位地址A0~9相连;再设计译码电路,产生16个译码输出信号,分别与16组的片选信号相连,如图(b)所示5.DRAM接口电路与SRAM接口电路的主要区别是什么?DRAM和SRAM相比,由于存储原理和芯片结构上的区别,使之在与CPU接口时有两个特殊的问题要考虑:一是由于DRAM芯片中的存储元是靠栅极电容上的电荷存储信息的,时间一长,信息就会丢失,所以必须定时刷新;二是由于DRAM芯片集成度高,存储容量大,使得引脚数量不够用,所以地址输入一般采用两路复用锁存方式。6.DRAM控制器一般由哪几个主要部分组成?各自功能是什么?DRAM控制器的组成,及各部分的主要功能如下:(1)地址多路开关:把来自CPU的地址转换成行地址和列地址分两次送出;(2)刷新定时器:定时提出刷新请求;P14(共14页) 《微机接口与通讯技术》课后习题参考答案(1)刷新地址计数器:提供刷新地址,每刷新一行,计数器自动加1,全部行刷新一遍后自动回零;CASRAS(2)仲裁电路:当来自CPU的访问存储器请求和来自刷新定时器的刷新请求同时产生时,对二者的优先权进行裁定;WE(3)时序发生器:提供行地址选通信号、列地址选通信号和写允许信号。1.当构成存储器的存储芯片容量不一致时,如何进行地址译码电路设计?举例说明。当构成存储器的存储芯片容量不一致时,有两种方法可共选择。一是用各自的译码电路分别译码产生各自的片选信号;二是分两次译码来实现。实际中采用第2种方法居多,这种方法首先按芯片容量大的进行一次译码,将一部分输出作为大容量芯片的片选信号;另外一部分输出则与其他相关地址一起进行二次译码,产生小容量芯片的片选信号。例如:用2KB的ROM和1KB的RAM构成4KB的ROM(0000H~0FFFH)和4KB的RAM(2000H~2FFFH),设系统有16根地址线,则芯片选择信号的产生如图所示:2.Cache结构中,地址索引机构的作用是什么?一般用什么构成?地址索引机构中存放着与高速缓冲存储器中内容相关的高位地址,当访问Cache命中时,用来和地址总线上的低位地址一起形成访问Cache的地址。为了保证Cache机构访问的快速性,地址索引机构一般采用按内容存取的相联存储器(CAM),它是一种TTL器件,本身读写的时间延迟极小,且全部比较一次完成。IOWCS习题七3.可编程并行接口芯片8255A面向I/O设备一侧的端口有几个?其中C口的使用有哪些特点?8255A面向I/O设备一侧有3个8位的端口:A口、B口和C口,或者说有2个8位的端口(A口、B口)和2个4位的端口(C上、C下)。其中,C口比较特殊,它的特点主要有:作为数据口,可分为两个独立的4位口(C上、C下)使用;1方式和2方式时,C口的部分引脚作为A、B口的固定联络信号线;1方式和2方式时,C口作为状态口使用;C口的引脚可以用按位置/复位命令字进行按位控制。4.可编程并行接口芯片8255A的编程命令有哪两个?试分别说明它们的作用及其命令格式中每位的含义是什么?8255A有两个编程命令:方式命令字和C口按位置/复位命令字。方式命令字:用于对8255A进行初始化编程,设定A、B、C口的工作方式及传送方向,其命令格式及各位含义如下:1D6D5D4D3D2D1D0特征位A口方式A口方向PC上方向B口方式B口方向PC下方向传输方向0:输出1:输入0:方式01:方式100:方式001:方式110:方式2(双向)C口按位置/复位命令字:用于对8255A进行动态控制,在应用过程中,需要对C口的某个引脚进行按位操作时使用,对已设定好的工作方式无影响,其命令字格式及各位含义如下:P14(共14页) 《微机接口与通讯技术》课后习题参考答案0D6D5D4D3D2D1D0特征位无效引脚选择置/复位选择000:PC0001:PC1…111:PC71:置位0:复位1.“由于按位置/复位命令字是对C口进行操作,所以可以写到C口”,这句话对吗?为什么?这句话不对,因为“按位置/复位命令字”是命令字的格式,必须写入到控制口,如果写入到C口就作为一个普通的数据,完成的功能完全不同。2.如何对8255A进行初始化编程?对8255A进行初始化编程主要是写入方式字,设置所使用的每个数据口的工作方式及传送方向。另外,如果有必要,在初始化时还要写入将PC某个引脚置1或清0的命令字(C口按位置/复位命令字)。3.可编程并行接口芯片8255A有哪几种工作方式?各自的特点何在?8255A有3种工作方式,其中A口可工作于方式0、方式1和方式2;B口只能工作于方式0和方式1。方式0的特点:①是基本输入/输出方式,输出有锁存功能,输入有缓冲功能,采用无条件方式或查询方式与CPU交换信息;②2个8位口和2个4位口,24根I/O信号线全部由用户控制;③无专用联络信号线;无固定时序;无确定的状态字;④单向I/O方式1的特点:①是选通(应答)输入/输出方式,输入、输出都具有锁存功能,采用查询方式或中断方式与CPU交换信息;②A、B口作为数据口,C口部分引脚作专用联络信号线,这些信号线用户不能指定为其他用途;③有专用联络信号线;有固定时序;有确定的状态字;④单向I/O方式2的特点:①A口为双向选通(应答)输入/输出方式,采用查询方式或中断方式与CPU交换信息;②有专用联络信号线;有固定时序;有确定的状态字;联络线定义、时序及状态字都是方式1输入和输出的组合。4.在1方式下输入和输出时,其专用联络信号是如何定义的?联络信号线之间的工作时序关系如何?1方式下输入时,定义了8255A与I/O之间的2根相互联络信号线,还在8255A与CPU之间设置了中断申请信号线:STB:外设给8255A的“输入选通”信号,低有效,将数据送入8255A;IBF:8255A给外设的“输入缓冲器满”信号,高有效,阻止外设送新数据;INTR:8255A给CPU的“中断申请”信号,高有效,请求CPU读取数据。联络信号之间的时序关系:OBF1方式下输出时,定义了8255A与I/O之间的2根相互联络信号线,还在8255A与CPU之间设置了中断申请信号线:ACK:8255A给外设的“输出缓冲器满”信号,低有效,通知外设取数据;:外设给8255A的“回答”信号,低有效,通知8255A数据已取走;INTR:8255A给CPU的“中断申请”信号,高有效,请求CPU写入下一个数据。联络信号之间的时序关系:5.现有4种简单的外设:①一组8位开关;②一组8位LED指示灯;③一个按钮开关;④一个蜂鸣片。要求:(1)用8255A作为接口芯片,将这些外设构成一个简单的微机应用系统,画出接口连接图;(2)编制5种驱动程序,每个程序必须包括至少有两种外设共同作用的操作(例如,根据8位开关“ON”和“OFF”的状态来决定8个LED指示灯“亮”和“灭”。又如,当按下按钮开关时,才使蜂鸣片发声等)。6.现有一四相步进电机,按双八拍方式运行。要求:(1)设计接口电路(根据本题(2)的要求设计);(2)编制下列控制程序:①上电后,步进电机来回走100步,当按下SW1开关时,停止走步;②步进电机先向一个方向连续慢走,当开关SW1按下时,快速反走,直到按下SW2时才停机;③对步进电机进行点动控制,即每按一次SW1开关,步进电机就走一步,按SW2停止运行;④在键盘上按S键和s键,启动步进电机开始走步;按SW1键停止;(3)画出四个控制程序的流程图。四相电机,双八拍方式各相绕组循环轮流通电的方式为:AB®ABC®BC®BCD®CD®CDA®DA®DAB相序表如下:P14(共14页) 《微机接口与通讯技术》课后习题参考答案绕组与数据线的连接运行方式加电代码方向DCBA双八拍正向反向D7D6D5D4D3D2D1D000000101AB05H00010101ABC15H00010100BC14H01010100BCD54H01010000CD50H01010001CDA51H01000001DA41H01000101DAB45H利用PB口作为数据口,传送加电代码;PC口检测两个按键开关,硬件设计如图所示:初始化流程图如图(a)所示,4个控制程序的流程图如图(b)、(c)、(d)、(e)所示:P14(共14页) 《微机接口与通讯技术》课后习题参考答案P14(共14页) 《微机接口与通讯技术》课后习题参考答案1.在图7.13两种方式并行传送接口电路中,甲机和乙机的8255A都使用了联络信号线,并且在两者的程序中都查了状态位,试分析二者所使用的联络线及查的状态位在本质上有无差别?为什么?2.根据图7.15两级微机双向并行接口逻辑电路,试编写主机(PC微机)的接收程序,要求PC微机通过8255A的PA口以中断方式读取从机(8031单片机)传来的状态信息。P14(共14页)'