微机原理第十二章
微机原理第12讲

1
name 32 bit multiply data segment mulnum dw 0000,0ffffh,0000, 0ffffh,4 dup(?) data ends stack segment para stack’stack’ db 100 dup(?) stack ends code segment assume cs:code,ds:data, ss:stack,es:data start proc far start push ds ;DS中包含程序段前缀起始地址 中包含程序段前缀起始地址 mov ax,0 push ax ;设置返回至 设置返回至DOS段值和 值 段值和IP值 设置返回至 段值和 mov ax,data mov ds,ax mov es,ax ;置段寄存器初值 置段寄存器初值 lea bx,mulnum mulu32: mov ax,[bx] ;B→AX
(LJ1)32-47 +(BF3)16-31 + CF → (LJ2)32-47 保留后一次进位CF 保留后一次进位 A*C=部分积 =(DX,AX) 部分积4 部分积 恢复进位CF 恢复进位 (LJ2)32-47 +(BF4)0-15 +(CF) 低16位 位 (CF) 高16位+(BF4)16-31 位 存入缓存区
伪指令的类型
• 伪指令语句有如下几种类型: 伪指令语句有如下几种类型:
数据定义语句 DB,DW,DD , , 标号赋值语句 EQU,= ,= 段定义语句 SEGMENT…ENDS 段分配语句 ASSUME 过程定义语句 PROC…ENDP 程序开始结束语句 ORG,END,NAME , ,
4.5 汇编语言程序设计
pushf ;保存后一次 保存后一次CF 保存后一次 mov ax,[bx+2] ; A →AX mul di ; A╳C popf adc ax, [bx+0ch];与部分积 的 与部分积3的 与部分积 相应部分相加 adc dx,0 mov [bx+ 0ch],ax ; mov [bx+0eh],dx ; ret start ends code ends end
微机原理课件第12讲(电子ok)

RD 读写 控制 CS 片选 译码 WR A1 A0 片内 译码
设
控制口
12
8255与主机外设的连接
②端口B(PB7~PB0)
总线 Reset D7~D0 D7~D0 Reset 端口A 数据 总线 缓冲器
包含一个8位的数据 输出锁存器/缓冲器, 一个8位的数据输入缓
冲器。有2 种工作方式
端口C 端口B 外
由1个8位双向三态缓
冲器构成;
8255A内各端口通过
端口C 端口B 外
IOR IOW A9~A2 A1 A0
RD 读写 控制 CS 片选 译码 WR A1 A0 片内 译码
数据缓冲器与系统总
设
控制口
线相连。
17
8255与主机外设的连接
4、复位信号reset
总线 Reset D7~D0 D7~D0 Reset 端口A 数据 总线 缓冲器
5、读写控制电路
总线 Reset D7~D0 D7~D0 Reset 端口A 数据 总线 缓冲器
/CS /RD 0 0 1 * 1 0
/WR 1 0 * 1 0
数据总线缓 冲器状态
端口C 端口B
外
内部数据总 线送D7~D0
D7~D0送内 部数据总线 三态,处于 断开状态
IOR IOW A9~A2 A1 A0
作与不同的工作方式。
6
数据端口A、B和C
A、B和C口均可用作8位的输入/输出口;C口还可
以作为2个4位输入/输出口。均与外设相连。
C口作为两个4位的输入输出口时,常用来配合A
口和B口工作,分别用来产生A口和B口的输出控制信 号和输入A口和B口的端口状态信号。 A组和B组 A组:端口A和端口C的上半部分(高4位)。
十二五教材讲稿微机原理与接口技术第12章微型计算机系统

2
2020年4月12日星期日
12.1 微机硬件系统概述
典型的微型计算投机影硬仪 件系打印统机由主机与外扫描设仪构成。 传真机
主机包括系统板、电源、硬盘、主机箱等以及可
选扩充部件等。 U盘
外设包括输入设备和输出设主备机 。
移动硬盘 或外围硬盘
显示器 键盘
鼠标
摄像头
3
2020年4月12日星期日
返回
第12章 微型计算机硬件系统
【本章提要】
介绍微机硬件系统的构成。以系统板为主线,从第一代个人计算机 系统板8088到当前流行系统板CoreX,介绍其硬件系统的组成及特点, 突出决定系统性能的芯片组的介绍,最后给出典型微型计算机系统 的构成。
【学习目标】
了解微机硬件系统的组成,了解微机系统板的组成、种类 理解芯片组在当今微机系统中的作用,熟悉MCH和ICH、PCH的功能、 组成及特点
3 从8259
4
通用 PS/2鼠标
IRQ11由SERIRQ, SCI, TCO,或PIRQ#产生 IRQ12由SERIRQ, SCI, TCO,或PIRQ#产生
5
内部
IRQ13状态机输出FERR#产生
6
IDE及SATA
IR14由IDEIRQ0或SERIRQ, PIRQ#产生
7
IDE 及SATA
IR15由IDEIRQ1或SERIRQ, PIRQ#产生
返回
12.1.2 微机系统板种类
按照使用的处理器可分为 XT主板(使用8088),286主板(使用80286),386主板(使用80386),486主板(使用 80486),奔腾主板(使用Pentium),奔腾II主板,奔腾III主板,P4主板, Core 2主 板等。
微机原理课后习题解答

微机原理习题第一章绪论习题与答案1.把下列二进制数转换成十进制数、十六进制数及BCD码形式。
(1) 10110010B =(2) 01011101.101B =解:(1) 10110010B = 178D = B2H = (0001 0111 1000)BCD(2) 01011101.101B = 93.625D = 5D.AH= (1001 0011.0110 0010 0101)BCD2.把下列十进制数转换成二进制数。
(1) 100D =(2) 1000D =(3) 67.21D =解:(1)100D = 01100100B(2)1000D = 1111101000B(3) 67.21D = 1000011.0011B3.把下列十六进制数转换成十进制数、二进制数。
(1) 2B5H =(2) 4CD.A5H =解:(1) 2B5H = 693D = 0010 1011 0101B(2) 4CD.A5H = 1229.6445D = 0100 1100 1101.1010 0101 B4.计算下列各式。
(1) A7H+B8H =(2) E4H-A6H =解:(1) A7H+B8H = 15FH(2) E4H-A6H = 3EH5.写出下列十进制数的原码、反码和补码。
(1) +89(2) -37解:(1) [+89 ] 原码、反码和补码为: 01011001B(2) [-37] 原码 = 10100101 B[-37] 反码 = 11011010 B[-37] 补码 = 11011011 B6.求下列用二进制补码表示的十进制数(1)(01001101)补 =(2)(10110101)补 =解:(1)(01001101)补 = 77D(2)(10110101)补 = -75D7.请用8位二进制数写出下列字符带奇校验的ASCII码。
(1)C: 1000011(2)O: 1001111(3)M: 1001101(4)P: 1010000解:(1)C:0 1000011(2)O: 0 1001111(3)M:1 1001101(4)P: 1 10100008.请用8位二进制数写出下列字符带偶校验的ASCII码。
微机原理习题集第十二章AD-DA习题

第十二章填空题1.Rm是运放电阻,被放在O2.DAC0832内部有地和地。
3.LE是DACO832内部寄存器的锁存命令。
当其为时,寄存器输出随变化。
4.当LE为。
时,数据在寄存器,不再随__________________ 上的数据变化而变化。
5.在过程控制应用中,有时对控制量的输出要求是的,在给定值时产生的偏差不改变控制量的,这时可采用单极性输出电路。
6.在随动系统中,由偏差所产生的控制量仅不同,而且控制量不同,这时要求D/A转换器有双极性输出;7.D/A转换器实现双极性输出,在输出除需要有运算放大器外还应增加和。
8.若D/A转换器芯片内部有锁存寄存器,微处理器就把D/A芯片当作一个并行;若D/A转换器芯片内部无锁存寄存器,微处理器就把D/A芯片当作一个并行。
9.ADC0809是CMOS的位转换器。
10.ADa)809的引脚EOC是信号,可作为。
二、单项选择题1.ADCo809启动A/D转换的方式是。
A)高电平B)负电平O负脉冲D)正脉冲2.ADC0809的输出。
A)具有三态缓冲器,但不可控B)具有可控的三态缓冲器C)没有三态缓冲器D)没有缓冲锁存3.ADC0809可以用()引线经中断逻辑向CPU申请中断。
A)OEB)STARTC)EOCD)ALE三、多项选择题1.DACO832有()工作方式。
A)单缓冲B)双缓冲O多级缓冲D)直通2.ADC0809与微机系统相连接,可采用的数据传输方式有。
A)无条件传输B)查询传输C)中断传输D)DMA传输四、简答题1、已知某DAC的最小分辨电压VLSB=5晒,满刻度输出电压VoIiFl0V,试求该电路输入二进制数字量的位数n应是多少?2、A/D转换器和微机接口中的关键问题有哪些?3、A/D转换器为什么要进行采样?采样频率应根据什么选定?4、若ADC输入模拟电压信号的最高频率位20KHz,取样频率的下限是多少?5、双积分式ADC 电路中的计数器是十进制的,最大计数容量M=(100O )10,时钟脉冲频率为5KHz,完成一次转换最长需要多少时间?6、设被测温度的变化范围为300°C~100(ΓC,如要求测量误差不超过±1℃,应选用分辨率为多少位的A/D 转换器?7、模-数转换器ADC 常用的有双积分式和逐次逼近式,请扼要比较它们的优缺点。
微机原理第十二章

图12-4 工作方式寄存器 工作方式寄存器各位含义如下所述: D7D6:DMA操作方式设定。共有4种方式,即: · 单字节方式 · 成组传送方式
· 请求方式 · 级联方式:图12-5是级联的基本方法,如下:
D5:控制地址变化方向。如置“1”,每传送一个字节的数据, 现行地址寄存器的内容减1。反之,D5=0,地址按增量
12.5
8237A的初始化及其在PC机中的应用
12.5.1 8237A的初始化 在进行DMA操作之前,必须对8237A进行初始化编程。初 始化编程有以下内容: (1)关闭8237A,以保证对8237A初始化编程结束后才响应 DMA操作请求。
(2)发送主清除命令,即用软件方法进行复位。 (3)输出16位地址值给相应通道的地址寄存器。 (4)设置传送的字节数给基字节计数器和当前字节计数器。 (5)输出工作方式控制字,以确定8237A的工作方式和传输 类型。 (6)将屏蔽控制字写入屏蔽寄存器,去除屏蔽。 (7)启动8237A,并将操作方式控制字写入控制寄存器,控 制8237A工作。 (8)启动DMA操作,可用软件方法将请求DMA操作控制字写 入请求寄存器,或用硬件方法,等待DREQ引线端发出 DMA操作申请。 (示例:参课本) 12.5.2 8237A在PC机中的应用
12.4
8237A的工作时序
8237A有二大类操作周期,即空闲周期和有效(DMA)周期。 每个周期总是由若干个状态周期组成。每个状态周期都占一个 时钟周期的时间,但由于每个状态周期中它们完成的任务不相 同,所以又把它们分别叫做SI、S0、S1、S2、S3、S4和SW七种 不同的周期。 12.4.1 正常DMA读写操作 图12-12是8237A在DMA传送时的时序(见下页)。 S0是个等待周期,这期间8237A等待CPU让出总线,得到 HLDA的响应。 S1状态中,8237A输出地址允许信号AEN,同时把高8位地 址A15~A8送到DB7~DB0引脚上,并发出ADSTB地址选通 信号。 S2状态中,首先向外设送出DACK信号。接着,根据操作 要求,发出读信号,对DMA读操作,就送出MEMR给存储器;对 DMA写操作就送IOR给外设。 S3状态中,8237A发出写命令。
微机原理第12章36页PPT

(3)CPU在完成当前总线操作后会立即对DMA请求做出响应。CPU 的响应包括两个方面:一方面,CPU将控制总线、数据总线和地址 总线浮空,即放弃对这些总线的控制权;另一方面,CPU将有效的 HLDA信号加到DMAC上,用此来通知DMAC,CPU已经放弃了总线的控 制权。
4.READY:外设向8237提供的高电平有效的“准备好”信号输 入引脚,若8237在S3状态以后的时钟下降沿检测到READY为低电 平,则说明外设还未准备好下一次DMA操作,需要插入SW状态, 直到READY引脚出现高电平为止。
DMA方式的适用场合 (1)硬盘和软盘的输入 / 输出 (2)快速通信通道输入 / 输出 (3)多处理机和多程序数据块传送 (4)扫描操作(图象显示) (5)高速数据采集。 特点:
DMA方式适用于成组传送数据的场合,每次传送之前要对 DMAC进行初始化, CPU要对DMAC写入20----30个字节的控制字。 缺点: (1)DMA期间,CPU不占总线,因而不能做其它工作。 (2)CPU对DMAC初始化占有额外时间。 (3)增加硬件,提高成本,使电路复杂。
8237( 40DIP )的引脚功能如下:
1.CLK:时钟信号输入引脚,对于标准的8237,其输入时钟频率 为3MHz,对于8237-2,其输入时钟频率可达5MHz。
2.CS:芯片选择信号,输入引脚。
3.RESET:复位信号,输入引脚,用来清除8237中的命令、状 态请求和临时寄存器,且使字节指针触发器复位并置位屏蔽触发器 的所有位(即使所有通道工作在屏蔽状态),在复位之后,8237工 作于空闲状态。
5.8237的数据引线,地址引线都有三态缓冲器,因而可 以接也可以释放总线。
微机原理课后习题参考答案

第1部分微型计算机基础知识1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】微处理器:指计算机内部对数据进行处理并对处理过程进行控制的部件,伴随着大规模集成电路技术的迅速发展,芯片集成密度越来越高,CPU可以集成在一个半导体芯片上,这种具有中央处理器功能的大规模集成电路器件,被统称为“微处理器”。
微型计算机:简称“微型机”、“微机”,也称“微电脑”。
由大规模集成电路组成的、体积较小的电子计算机。
由微处理机(核心)、存储片、输入和输出片、系统总线等组成。
特点是体积小、灵活性大、价格便宜、使用方便。
微型计算机系统:简称“微机系统”。
由微型计算机、显示器、输入输出设备、电源及控制面板等组成的计算机系统。
配有操作系统、高级语言和多种工具性软件等。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?【解】CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。
1.3 微型计算机采用总线结构有什么优点?【解】①简化了系统结构,便于系统设计制造;②大大减少了连线数目,便于布线,减小体积,提高系统的可靠性;③便于接口设计,所有与总线连接的设备均采用类似的接口;④便于系统的扩充、更新与灵活配置,易于实现系统的模块化;⑤便于设备的软件设计,所有接口的软件就是对不同的口地址进行操作;⑥便于故障诊断和维修,同时也降低了成本。
总线的逻辑电路有些是三态的,即输出电平有三种状态:逻辑“0”,逻辑“1”和“高阻”态。
1.4计算机总线有哪些,分别是什么?【解】总线按其信号线上传输的信息性质可分为三组:①数据总线,一般情况下是双向总线;②地址总线,单向总线,是微处理器或其他主设备发出的地址信号线;③ 控制总线,微处理器与存储器或接口等之间1.5 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?【解】数据总线(DB)为双向结构,数据在CPU与存储器或I/O接口之间的传送是双向的,(数据既可以读也可以写),其宽度通常与微处理器的字长相同。
微机原理各章知识要点、小结五篇

微机原理各章知识要点、小结五篇第一篇:微机原理各章知识要点、小结各章知识要点、小结第一章微型计算机系统概述本章知识要点:•微型计算机的发展。
•微型计算机的特点。
•微型计算机系统的组成。
•微型计算机的主要性能指标。
本章小结:本章首先介绍了微型计算机的发展、组成。
然后对计算机的结构进行了简单介绍,并介绍了微型计算机的3种不同的总线结构。
最后,介绍了计算机的软、硬件的概念,区别和联系以及计算机的主要性能指标。
在学习完本章内容之后,需要掌握如下内容。
•微型计算机的发展阶段和特点。
•微型计算机属于第四代计算机,为冯〃诺伊曼结构。
•微型计算机系统由硬件和软件组成。
硬件由输入设备、输出设备、运算器、存储器和控制器等5部分组成。
•微型计算机中的软硬件概念、分类、联系以及区别。
•微型计算机的主要性能指标有字长、存储器容量、运算速度、外部设备配置、系统软件配置、性价比等。
• 1KB=1024B1MB=1024KB1GB=1024MB 第二章计算机中的信息表示本章知识要点:•进位计数制及其相互转换。
•二进制数的运算规则。
•计算机中带符号数与小数点的表示方法。
•计算机中的常用码制。
本章小结:本章着重介绍了计算机中数据的表示方法,重点讲述了二、八、十、十六进制数的相关概念及各类进制数之间相互转换的方法,无符号数和带符号数的机器内部表示以及字符编码和汉字编码等内容。
在学习完本章内容之后,需要掌握如下内容。
•掌握计算机内部的信息处理方法和特点。
•熟悉原码、反码、补码等各类数制之间的相互转换。
•理解无符号数和带符号数的表示方法。
•掌握各种BCD码的特点及其之间的相互转换。
•了解循环码和余3码的表示方法。
1/7 •掌握在计算机中如何运用字符的ASCII码表示非数字信息的。
•了解汉字编码以及在计算机中对汉字的表示方法。
第三章微处理器本章知识要点:• CPU的发展过程。
• 80486的内部基本结构。
• 80486的外部基本引脚。
• CPU的内部寄存器。
微机原理课件第12讲

8086CPU
由CPU的运算错误引起的中断
INT中断 CPU执行一条INT n指 令后会立即产生中断。 调用中断处理程序去完 成中断功能,指令中n指 出了中断类型号。
除法错中断:除法错中断类型号为0 溢出中断:溢出中断类型号为4,专用指令为INTO, 加减法后必须跟INTO指令CPU才能及时响应。
中断源 外部中断,也叫硬件中断
外设或协处理器发出的中断申请
中断响应
中断请求何时发生是随机的
CPU在每条指令的最后一个T周期去检测INTR引脚, CPU一旦检测到有中断请求,在满足中断响应的条件 下(IF=1),CPU响应中断,向外设发出INTA中断响 应信号。 保护断点(当前CS,IP和FR值入栈),然后转向中断服 务程序。 中断服务程序执行完毕,CPU返回原执行程序的中断 处,继续向下执行,称为中断返回。
执行指令
否
指令结束
取下条指令
调用中断 服务程序
保护现场 中断服务 恢复现场 开中断 返回
是
有中断请求
否
是 响应中断 关中断 保护断点 寻找中断源
8086中断向量表
000 类型0中断入口(除法出错) 类型1中断入口(单步中断) 类型2中断入口(NMI) 类型3中断入口(断点中断) 类型4中断入口(溢出中断)
中断向量表
CPU响应中断后,必须由中断源提供地址信息,引
导程序进入中断服务子程序,这些中断服务程序的入口 地址存放在中断向量表中。 内存中专门开辟了一个区域,存放中断向量表(也 称中断矢量表)
中断服务程序入口地址构成的表称为中断向量表
中断优先级
当有多个中断源请求中断时,中断系统判别中断申请
的优先级,CPU响应优先级高的中断,挂起优先级低的 中断。当CPU在运行中断服务子程序时,又有新的更高 优先级的中断申请进入,CPU要挂起原中断进入更高级 的中断服务子程序,实现中断嵌套功能。 主程序 中断1 中断2
12-13微机原理与应用02资料

GND AD 14 AD 13 AD 12 AD 11 AD 10 AD 9 AD 8 AD 7 AD 6 AD 5 AD 4 AD 3 AD 2 AD 1 AD 0 NMI INTR CLK GND
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
通用寄存器的命名
AX:累加器(Accumulator) BX:基址寄存器(Base) CX:计数器(Counter) DX:数据寄存器(Data) SI:源变址寄存器(Source Index) DI:目的变址寄存器(Destination Index) BP:基址指针(Base Pointer) SP:堆栈指针(Stack Pointer)
取指令
总线接口部件BIU
取指令1
执行1
取指令2
串行处理
执行2
取指令1
取指令2
取指令3
取指令4
执行1
执行2
执行3
流水线处理
指令流水线 ( Pipeline )
一种将每条指令分解为多步,并让不同指令的各步操作 重叠,从而实现几条指令并行处理
•
在CPU中把一条指令分解成多个可单独处理的操作,使 每个操作在一个专门部件上执行 一条指令需要顺序地经过各部件的处理才能完成
默认通过DS∶EA,也可通过ES/FS/GS或SS/CS∶EA读取数据 DS/ES/FS/GS或SS/CS=数据所在逻辑段的段基地址高16位
EA=数据所在逻辑段的偏移地址(有效地址)
物理地址的形成
段的起始地址(段首址)规定为:最低 4 位为 0, 高 16 位为段寄存器内容。 每个段的字节数视需要而定,最多为 64 KB;
微机原理讲义

电子计算机的发展:
第一代:电子管计算机(1946-1956) 第二代:晶体管计算机(1957-1964) 第三代:中小规模集成电路计算机(1965-1970) 第四代:超大规模集成电路计算机(1971-今)
大型计算机/巨型计算机(Mainframe Computer) 中型计算机 小型计算机(Minicomputer) 微型计算机(Microcomputer) 单片计算机(Single-Chip Microcomputer)
100-200
8086/8088 80286 80386 32 80486 32 Pentium P/Pro P/MMX PII PIII P4 Itanium
六
32
七
64
0.13
550 133-200 450 166-233 750 233-450 >300 850 450-1200 1000 1300-2400 CPU:2.5K 800(20条指令 >3000 Cache:30K /时钟周期)
(2n1 1) ~ (2n1 1)
对应的原码是1111~ 0111。
33
数0的原码
8位数0的原码:+0 = 0 0000000 - 0 = 1 0000000
即:数0的原码不唯一。
34
反码[X]反
定义 若X>0 ,则 [X]反=[X]原 若X<0, 则 [X]反= 对应原码的符号位 不变,数值部分按位取反
D Dn 1 10 Dn 2 10 D0 10
1 n 1 n2 0
D1 10 D m 10
m
i m
D 10
i
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图12-9 屏蔽寄存器 屏蔽触发器各位含义如下: D1D0:选择通道。 D2:屏蔽位设置,“=1”设置屏蔽位,“=0”清除屏蔽位。 此外,8237A还允许使用综合屏蔽命令来设置通道的屏蔽触 发器,如图12-10所示(见下页)。 D3~D0中的某位为1,就使对应的通道设置屏蔽位。 若直接访问屏蔽寄存器(使用图12-9格式),则地址为 0AH。若使用综合屏蔽命令字来访问屏蔽寄存器(使用图12 -10格式),则地址为0FH,且一次就可以完成4个通道的屏
图12-3 8237A内部结构图
基地址寄存器是由CPU用程序控制写入的,表示数据块在 基本字节数寄存器中写入的是本次传输的数据块字节数, 这个数也不会随DMA传输的进行而变化。若欲传输N个字节, 写入到基本字节数寄存器的值应为N-1,即比实际要传输的 字节数少1。 二个基本寄存器写入内容时,相应的现行地址寄存器也写 入同样的内容。在DMA传送过程中,每传送一个字节,这二 个现行寄存器的内容就变化一次。现行地址寄存器的变化方 向由编程时的设置决定,而现剩字节数寄存器则恒作减量计 数。当现剩字数寄存器由0减至FFFFH时,产生计数结束信 号EOP输出。 2.工作方式寄存器 图12-4(见下页)是一个字节长的工作方式寄存器各位 含义。4个方式寄存器只占用一个I/O端口地址,不管哪个通 道的方式字都用0BH地址写入,利用方式字的最低两位D1D0 位的编码来指定该方式字属于哪个通道。
图12-8
DMA 请求寄存器
DMA请求寄存器各位含义如下: D1D0:选择通道。 D2:请求标志,“D2=1”表示有请求,“D2=0”表示无请 求。 5.屏蔽寄存器 8237A的每个通道都配备了一个屏蔽触发器,作为屏蔽标 志位。DMA的屏蔽标志位是通过往屏蔽寄存器写入屏蔽字 节来设置的,如图12-9所示(见下页)。
· 字节计数器:存放DMA传输的字节数; · 控制寄存器:存放由CPU设定的DMA传输方式,控制命令 等; · 状态寄存器:存放DMAC当前的状态,包括有无DMA请求, 是否结束等。
图12-1 DMAC的内部结构与外部连接示意图
12.2
Intel 8237A概述
12.2.1 8237A的特点 本节略,内容详见课本。 12.2.2 8237A的引脚 8237A采用40引脚双列直插封装(见下页图12-2)。 8237A的引脚主要围绕其二种工作状态而设置,有一些引脚 在两种状态下都有用,而有些则是专用的。 1.与DMA周期有关的引脚: CLK:时钟输入信号。 DREQ0~DREQ3,DACK0~DACK3:DMA请求及响应信号。 HRQ,HLDA:保持请求和响应信号。 A7~A0:低8位地址。其中A3~A04位是双向地址,因为当 CPU对8237A编程时,这4个地址引脚又要作为对片内寄存器 寻址的输入地址用。 DB7~DB0:数据总线。在DMA周期中,作为高8位地址信号 (A15~A8)与数据信号(D7~D0)的分时复用线。
图12-4 工作方式寄存器 工作方式寄存器各位含义如下所述: D7D6:DMA操作方式设定。共有4种方式,即: · 单字节方式 · 成组传送方式
· 请求方式 · 级联方式:图12-5是级联的基本方法,如下:
D5:控制地址变化方向。如置“1”,每传送一个字节的数据, 现行地址寄存器的内容减1。反之,D5=0,地址按增量
图12-6 控制寄存器 D4:选择不同的优先权。在固定优先权时,通道0优先级最高 通道3优先级最低。另一种优先权是循环式,刚被服务过 的通道其优先权自动降为最低,而其余各通道优先权依 次顺高一级,从而使各通道DMA被响应的可能性相同。
D2:8237A是否工作的控制位。如为“0”,8237A可工作,否 则 不工作。 D1:从存储器到存储器传输时,固定用通道0的地址寄存器存 放源地址,这时可用D1位控制源地址变化与否。如果为 “1”,源地址在整个数据块传送中都有保持不变。这种方 式将使一个单元的内容送到规定长度的某一内存区域中去; 如果为“0”,则通道0的地址变化。该位仅在D0位为“1” 时 才有意义,如果D0位为“0”,即不作存储器之间的数据传 输时,D1位就没有意义了。 D0:控制是否从存储器到存储器传输。若为1,是从存储器到 存储器传输;否则不是。 存储器间传送的操作只能用软件启动,对请求寄存器(地址 为09H)写入04H,就可以用软件方法启动通道0。 4.DMA请求寄存器 请求寄存器格式如图12-8所示(见下页)。
ADSTB:地址选通信号。。 AEN:地址使能信号。 MEMR、MEMW:存储器读、写控制,低电平有效,输出。 IQP、IOW:外设读、写控制。 READY:就绪输入信号。 EOP:过程结束信号。
图12-2 8237A的引脚图
2.与CPU读写有关的引脚 CS:片选信号。 A3~A0:地址线。用来选择8237A内部有关寄存器的地址。 DB7~DB0:数据线。 IOR、IOW:外设读、写。 RESET:清除信号。 由上可见,引脚中A3~A0,DB7~DB0以及IOR、IOW是两种 状态下都用到的信号,所以它们都是双向信号。 12.2.3 8237A的内部结构 8237A内部结构如图12-3所示(见下页)。 12.2.4 8237A的寄存器 1.地址和字数寄存器 8237A的地址和字数寄存器包括基地址寄存器、基本字节数 寄存器、现行地址寄存器和现剩字节数寄存器,每个通道都 必须有这4个寄存器,所以总数达16个。其中二种基本寄存器 只能写入,而二种现行寄存器只能读。它们总是占用8个I/O 端口地址,具体地址如表12.1所示(见课本)。
方式变化。 D4:自动预置。如置“1”,将该通道设置成自动预置方式, 即每当一次DMA传输结束后,2个基本寄存器中的预置 值将自动地再次写入2个现行寄存器中。 D3D2:数据传送方向。写传输,是指数据从I/O设备写入到 内存中去,读传输正好相反。校验传输时8237A像 DMA读或DMA写传输一样产生时序,产生地址信号, 外设可以利用这样的时序进行校验。 D1D0:通道选择。 3.控制寄存器 寄存器中各位的定义如图12-6所示(见下页)。 控制寄存器各位含义如下: D6、D7:分别控制DREQ和DACK有效的极性。D6控制 DREQ,D7控制DACK,为“0”时设定有效电平为 高电平,为“1”时低电平才是有效的。一旦设定后 4 个通道的规定是一样的。