微机接口原理作业

发布 2022-09-04 21:04:28 阅读 8123

微机原理与接**术。

作业。班级: 研 1020

姓名: 冯旭

学号: 1008221031

任课老师: 蔺广逢

2023年 6 月。

1、 总结和概述8086的体系架构,对地址与数据总线的生成电路及其作用进行详细分析。

答:8086的体系构架如下:

cpu结构。

cpu内部结构。

8086cpu由两部分组成:

a、指令执行部件:执行部件(eu)主要由算术逻辑运算单元(alu)、标志寄存器fr、通用寄存器组和eu控制器等4个部件组成,其主要功能是执行指令。

b、总线接口部件:总线接口部件(biu)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或i/o端口读取操作数参加eu运算或存放运算结果等。

cpu的寄存器结构。

a、通用寄存器:

ax: 累加器一般用来存放参加运算的数据和结果,在乘、除法运算、i/o操作、bcd数运算中有不可替代的作用。

bx: 基址寄存器除可作数据寄存器外,还可放内存的逻辑偏移地址,而ax,cx,dx则不能。

cx:将它称作计数寄存器,是因为它既可作数据寄存器,又可在串指令和移位指令中作计数用。

dx:dx除可作通用数据寄存器外,还在乘、除法运算、带符号数的扩展指令中有特殊用途。

si: 源变址寄存器多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在ds寄存器中,也可放数据。

di: 目标变址寄存器多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在ds寄存器中也可放数据。

bpss: 基址指针用于存放内存的逻辑偏移地址,隐含的逻辑段地址在ss寄存器中。

sp: 堆栈指针用于存放栈顶的逻辑偏移地址,隐含的逻辑段地址在ss寄存器中。

b、段寄存器

总线接口部件biu设有4个16位段寄存器

cs(code segment),**段寄存器中存放程序**段起始地址的高16位。

ds(data segment),数据段寄存器中存放数据段起始地址的高16位。

ss(stack segment),堆栈段寄存器中存放堆栈段起始地址的高16位。

es(extended segment),扩展段寄存器中存放扩展数据段起始地址的高16位。

c、标志寄存器fr

标志寄存器fr中共有9个标志位,可分成两类:

状态标志表示运算结果的特征,它们是:cf(进位标志位)、pf(奇偶校验标志位)、af(辅助进位标志位)、zf(零标志位)、sf(符号标志)和of(溢出标志)

控制标志控制cpu的操作,它们是if(中断标志位)、df(方向标志位)和tf(单步标志位)。

d、指令指针寄存器 ip:biu要取指令的地址。

cpu的管脚及功能。

最小模式下。

a、ad15~ad0 (address data bus):

地址/数据复用信号,双向,三态。在t1状态(地址周期)ad15~ad0上为地址信号的低16位a15~a0;在t2 ~ t3状态(数据周期)ad15~ad0 上是数据信号d15~d0。

b、19/s6~a16/s3 (address/status):

地址/状态复用信号,输出。在总周期的t1状态a19/s6~a16/s3上是地址的高4位。在t2~t4状态,a19/s6~a16/s3上输出状态信息。

c、bhe# /s7 (bus high enable/status):

数据总线高8位使能和状态复用信号,输出。在总线周期t1状态,bhe#有效,表示数据线上高8位数据有效。在t2~t4状态bhe # /s7 输出状态信息s7。

s7在8086中未定义。

d、 rd# (read)

读信号, 三态输出,低电平有效,表示当前cpu正在读存储器或i/o端口。

e、 wr# (write)

写信号,三态输出,低电平有效,表示当前cpu正在写存储器或i/o端口。

f、m/io# (memory/io )

存储器或i/o端口访问信号。三态输出,m/io#为高电平时,表示当前cpu正在访问存储器,m/io# 为低电平时,表示当前cpu正在访问i/o端口。

g、ready

准备就绪信号。由外部输入,高电平有效,表示cpu访问的存储器或i/o端口己准备好传送数据。当ready无效时,要求cpu插入一个或多个等待周期tw,直到ready信号有效为止。

h、intr( interrupt request)

中断请求信号,由外部输入,电平触发,高电平有效。intr有效时,表示外部设备向cpu发出中断请求,cpu在每条指令的最后一个时钟周期对intr进行测试,一旦测试到有中断请求,并且当中断允许标志if=1时,则暂停执行下条指令转入中断响应周期。

i、inta# (interrupt acknowledge)

中断响应信号。向外部输出,低电平有效,表示cpu响应了外部发来的intr信号。

j、nmi( non—maskable interrupt request)

不可屏蔽中断请求信号。由外部输入,边沿触发,正跳沿有效。cpu一旦测试到nmi请求信号,待当前指令执行完就自动从中断入口地址表中找到类型2中断服务程序的入口地址,并转去执行。

k、test#

测试信号。由外部输入,低电平有效。当cpu执行wait指令时(wait指令是用来使处理器与外部硬件同步),每隔5个时钟周期对test进行一次测试,若测试到该信号无效,则cpu继续执行wait指令,即处于空闲等待状态;当cpu测到test输入为低电平时,则转而执行wait的下一条指令。

由此可见,test对wait指令起到了监视的作用。

l、reset

复位信号。由外部输入,高电平有效。reset信号至少要保持4个时钟周期,cpu接收到该信号后,停止进行操作,并对标志寄存器(fr)、ip、ds、ss、es及指令队列清零,而将cs设置为ffffh。

当复位信号变为低电平时,cpu从ffff0h开始执行程序,由此可见,采用8086cpu计算机系统的启动程序就保持在开始的存储器中。

m、ale(address latch enable)

地址锁存使能信号,输出,高电平有效。用来作为地址锁存器的锁存控制信号。

n、den# (data enable)

数据使能信号,输出,三态,低电平有效。用于数据总线驱动器的控制信号。

o、dt/r#(data transmit/receive):

数据驱动器数据流向控制信号,输出,三态。在8086系统中,通常采用8286或8287作为数据总线的驱动器,用dt/r#信号来控制数据驱动器的数据传送方向。当dt/r#=1时,进行数据发送;dt/r#=0时,进行数据接收。

p、hold(hold request)

总线请求信号。由外部输入,高电平有效器向cpu请求使用总线。

q、hlda(hold acknowledge)

共享总线的处理总线请求响应信号。向外部输出,高电平有效。

r、mn/mx#(minimum/maximum mode control):

最大最小模式控制信号,输入。mn/mx#=1(+5v),cpu工作在最小模式。mn/mx#=0(接地), cpu则工作在最大模式。

s、gnd 地。

t、vcc 电源,接+5v。

最大模式下:

当8086cpu工作在最大模式系统时,有8个管脚重新定义 。

a、s2#、s1#、s0#(bus cycle status,最小模式为m/io#、d/tr#、den#

总线周期状态信号,输出。这三个信号的组合表示当前总线周期的类型。在最大模式下,由这三个信号输入给总线控制器8288,用来产生存储器、i/o的读写等相关控制信号。

b、lock# 封锁信号。

三态输出,低电平有效。lock有效时表示cpu不允许其它总线主控者占用总线。这个信号由软件设置。

当在指令前加上lock前缀时,则在执行这条指令期间lock保持有效,即在此指令执行期间,cpu封锁其它主控者使用总线。

c、qs1、qs0(instruction queue status,最小模式为ale、inta#

指令队列状态信号,输出。qs1,qs0组合起来表示前一个时钟周期中指令队列的状态,以便从外部对芯片的测试。

d、rq#/gt0# ,rq#/gt1# (request/grant)

总线请求信号请求/同意信号。双向,低电平有效,当该信号为输入时表示其它主控者向cpu请求使用总线;当为输出时表示cpu对总线请求的响应信号。两条线可同时与两个主控者相连,同时,rq#/gt0#优先级高于rq#/gt1#

e、qs1、qs0(instruction queue status):

指令队列状态信号,输出。qs1,qs0组合起来表示前一个时钟周期中指令队列的状态,以便从外部对芯片的测试。

上图为8086的最小工作模式。系统的地址总线可以由cpu的ad0~ad15、a16~a19通过地址锁存器8282构成;数据总线可以由ad0~ad15供给,也可以通过发送/接收芯片8286(或者74ls245)供给(增大总线的驱动能力)

2、总结8086和8259构成的中断系统的结构、工作原理,并举例一个完整的中断应用系统(含电路和程序)。

答:在一个8259a芯片有如下几个内部寄存器: interrupt mask register (imr) 、interrupt request register (irr) 、in sevice register (isr)

imr被用作过滤被屏蔽的中断;irr被用作暂时放置未被进一步处理的interrupt;当一个interrupt正在被cpu处理时,此中断被放置在isr中。

除了这几个寄存器之外,8259a还有一个单元叫做priority resolver,当多个中断同时发生时,priority resolver根据它们的优先级,将高优先级者优先传递给cpu。

微机接口作业

复习作业1 请同学们作业时,不要改变题号 字体及答案的颜色仅修改表内答案字母,文件的扩展名不能改变 建议用office 2003,office2007版的要另存为office2003版本 一 判断题 30分 在 内填空,正确填a,错误填b请不要改变字体的颜色 1 8086的不允许有段的重叠和交叉。2...

微机接口作业

用8259a 8254a 8255a制作流水灯。专业 xx 姓名 xxx 学号。1 功能简介。8259a的功能 8259a是专门为了对8085a和8086 8088进行中断控制而设计的芯片,它是可以用程序控制的中断控制器。单个的8259a能管理8级向量优先级中断。在不增加其他电路的情况下,最多可以级...

2019微机接口作业

一 单选题 总分28分 1.1分 8086组成系统时,与其地址线 数据线直接相连的器件分别是 1 a.单向驱动器 双向驱动器b.锁存器 双向驱动器。c.锁存器 锁存器d.双向驱动器 双向驱动器。答案 1 b 2.1分 8086的 rd we控制信号的作用是 2 a.控制cpu数据总线上数据流的流向b...