欢迎您访问深圳自考网!本站非政府官方网站,官方信息以广东省教育考试院(http://eea.gd.gov.cn/)为准。 RSS地图 | 网站导航

深圳自考网LOGO

服务热线:177-2280-6683

自考办电话 | 在线提问 | 公众号

微型计算机原理及应用学习笔记 半导体存储器接

编辑整理:深圳自考网 发布时间:2018-05-23 12:28:38阅读数:

一、8位微机系统中的存储器接口
    在微机系统中,存储器系统是必不可少的,下面以一个8位微机系统中的存储器子系统为例,说明半导体存储器芯片与CPU的连接方法,以及在连接时必须注意的问题。
    图5-16是一个8位微机系统中的存储器子系统。该子系统中有4片2732EPROM组成16KB的ROM区,4片6116SRAM组成8KB的RAM区。该存储器子系统共占有24KB的内存空间,采用8088CPU。
    从图5—16可见,在内存芯片选定后,内存芯片同CPU的连接是构筑存储器子系统的主要工作,有三部分内容:
    (1)地址线的连接。可以根据所选用的半导体存储器芯片地址线的多少,把CPU的地址线分为芯片外(指存储器芯片)地址和芯片内的地址,片外地址经地址译码器译码后输出,作为存储器芯片的片选信号,用来选中CPU所要访问的存储器芯片;片内地址线直接接到所要访问的存储器芯片的地址引脚,用来直接选中该芯片中的一个存储单元。图5-16中,对2732而言,片外地址线为A19~A12,片内地址线为A11~A0;对6116而言,片外地址线为A19~A11,片内地址线为A10~A0。
    (2)数据线的连接。图5—16中,2732为4KX 8位芯片,6116为2KX 8位芯片,两者都有8条数据线,可直接同8088CPU的8位数据线相连。如果采用Intel2164芯片,因该芯片为64KXl位芯片,内部只有一位数据线,必须由8片2164芯片才能构成64K字节的内存,因此8片2164的数据线必须分别同8088CPU的8条数据线相连。
    (3)控制线的连接。即如何用CPU的存储器读写信号同存储器芯片的控制信号线连接,以实现对存储器的读写操作,
    (一)集成译码器及其应用
    CPU要对存储单元进行读写,首先要选择存储器芯片,即进行“片选”,然后在被选中的芯片中选择所要读写的存储单元,即进行“字选”——选择存储字。片选是通过地址译码方法来实现的。
    1.74LSl38译码器
    在微机系统中,常采用中规模集成电路芯片74LSl38作为地址译码器,其引脚及逻辑电路如图5-17所示。
    74LSl38是3—8线译码器/分配器,有三个“选择输入端”C、B、A,三个“使能输人端”(又称为“允许端”或“控制端”)G1、 ,以及8个输出端Y0—Y7。其功能表见表5-3所示。
    2.74LSl38的应用
    以图5—16的存储器子系统为例,地址译码器74LSl38的“使能输入端” 经与非门同系统的地址总线A15、A16、A17和A18相连, 同 相连,G1与A19,相连,而三个选择输入端C、B、A分别与A14、A13、A12相连。这样,74LSl38译码器能工作的必要条件是:①存储器操作——包括存储器读或写;②A19A18A17A16A15为‘11111’。而A14A13A12的8种不同的地址组合(从‘000’到‘111’),分别对应于与 — 个输出端相连的8个半导体存储器芯片的地址范围。
   据此分析,4片2732芯片的编号为EPROMl、EPROM2、EPROM3和EPROM4,4片6116芯片的编号为SRAMl、SRAM2、SRAM3和SRAM4,其地址范围的计算如表5—4:
可得8片存储器芯片的地址范围为
EPROMl:F8000H—F8FFFH
EPROM2:F9000H~F9FFFH
EPROM3:FA000H—FAFFFH
EPROM4:FB000H—FBFFFH
SRAMl:FC000H~FC7FFH
SRAM2:FC800H~FCFFFH
SRAM3:FD000H~FD7FFH
SRAM4:FD800H—FDFFFH
    在上述计算中,注意片内地址与片外地址的划分。对2732EPROM而言,其存储容量为4KX8位,有12条地址线,因此CPU的20条地址线中低12位A1l—A0作为存储器芯片的片内地址,直接与2732芯片的12条地址线相连,而高8位A19~A12为片外地址,同译码器的选择输入端C、B、A以及使能输入端相连。对6116SRAM而言,其存储容量为2KX8位,有11条地址线,则片内地址为11位,同CPU的A10~A0相连,而A19~A1l为片内地址,参与译码器译码。在图5—16中, 和 两个译码输出端同地址线All或 (A11取反)经或门后作为6116的片选信号。
    (二)实现片选控制的三种方法
    在存储器系统中.实现片选控制的方法有三种,即全译码、部分译码和线选。
    1.全译码法
    图5—16所示的存储器译码电路中,CPU的全部地址总线A19~A0都参与地址译码,因此对应于存储器芯片中的任意单元都有唯一的确定的地址,这种片选控制方法称为“全译码”。
    2.部分译码法
    如果在图5—16的存储器译码电路中,A19,不参加译码,即74LSl38的G1端接+5V,则Al9,不论是“0”还是“1”,只要A18~A1:满足1111000都能选中EPROMl,则E-PROMl的地址范围为78000H~78FFFH和F8000H—F8FFFH,那么一个存储单元可以由两个地址码来选中.这种片选控制方式称为“部分译码”。
    3.线选法
    如果在一个微机应用系统中,所要求的存储器容量较小.而且以后也不要求扩充系统的存储容量,例如,只要求4KB的EPROM区和4KB的SRAM区,则可不采用译码器芯片74LSl38。而采用如图5—18所示的线选控制电路。
  该电路中采用1片2732EPROM、2片5116SRAM构成总计8KB的存储器系统。图中A11—A0直接同2732的地址线相连,A10~A0直接同6116的地址相连。片选控制电路由几片小规模集成电路芯片组成,系统的地址总线中的A11用来区分两片6116芯片的地址范围,地址总线的最高位A19用来划分4KB EPROM区和4KB SRAM区的地址范围,这样,凡是A19为“0”的地址信号都选中SRAM区,A19为“1”的地址信号都选中EPROM。4KB的EPROM区和4KB的SRAM区分别对应于512K个地址,这样一个存储单元可以有128个地址来选中,凡是A19,A11~Ao这13位地址固定,A18—A12这7位地址为任意值的128种地址码都能选中同一存储单元,称为“地址重叠”。
    显然,部分译码也存在地址重叠的问题。
    (三)控制信号的连接
    在存储器系统中,SRAM通常有三条控制信号线——片选信号 、写允许信号 和输出允许信号 ,这些控制信号的连接如图5—16所示, 接地址译码器输出, 接读信号线 , 接写信号线 。EPROM芯片常采用双线控制,片选信号 用来选择芯片、输出允许信号 用来允许数据输出。只有这两条控制线同时有效时,才能从输出端得到要读出的数据。当 为高电平时,EPROM处于待用状态(静止等待状态),输出呈现高阻抗,芯片处于低功耗状态且不受 的影响。建议 同地址译码器输出相连,以控制对各器件的选择,而 同系统控制总线中的读信号 相连,这样可以保证所有未被选中的器件处于低功耗状态。
    最后还要特别指出的是,在存储器芯片同CPU连接时要注意:①CPU总线的负载能力问题。通常CPU的总线负载能力为一个TTL器件或20个MOS器件,当总线上挂接的器件超过上述负载时,应考虑总线的驱动问题。在总线上加接缓冲器和驱动器,以增加CPU的负载能力。常用的驱动器和缓冲器有单向的74LS244,74LS367以及Intel的8282等,用于单向传输的地址总线和控制总线的驱动;对双向传输的数据总线通常采用数据收发器74LS245或Intel的8286、8287等。②CPU的时序同存储器芯片的存取速度的配合问题。存储器芯片同CPU连接时,要保证CPU对存储器的正确、可靠的存取,必须考虑存储器的工作速度是否能同CPU速度的匹配问题。如果存储器的速度跟不上CPU的速度,就必须在正常的CPU总线周期中插入等待周期Tw。
    二、16位微机系统中的内存储器接口
    (一)16位微机系统中的奇偶分体
    在16位微机系统中,CPU除了可以对字节寻址外,还必须能进行整字(16位)的读写,因此要求存储器系统组织的设计能保证一次能访问一个整字,但也能允许一次只访问一个字节。
    以8086系统为例,8086CPU有20条地址线,可直接寻址1M字节的内存储器地址空间,由于8086CPU的数据总线是16位的,而这1M字节的存储器地址空间是按字节顺序排列的,为了能满足一次访问一个整字又能访问一个字节的要求,8086系统中1M字节的存储器地址空间实际上分成两个512K字节的存储体——“偶存储体”和“奇存储体”,偶存储体同8086的低8位数据总线D7~D0相连接,奇存储体同8086的高8位数据总线D15~D8相连接,地址总线的A19~A1同两个存储体中的地址线A18~A0相连接,最低位地址线A0和8086的”总线高允许”信号 用来选择存储体,如图5-19所示(注意,图中已将双重总线分开表示)。A0和 对存储体选择的编码表见表5-5。
    (二)8088/8086的存储器访问操作
    1.字节访问和字访问
    8088是准16位微处理器,其外部数据总线为8位,内部寄存器和运算器为16位,一个总线周期只能访问一个字节,要进行字操作,必须用两个总线周期,第一个总线周期访问低位字节、第二个总线周期访问高位字节。
   8086是16位微处理器,其外部数据总线为16位,每个存储周期可以访问存储器中的8位或16位信息。当8086访问一个整字(16位)变量时,如该变量的地址为偶地址(即字变量的低字节在偶地址单元,高字节在奇地址单元),则8086将用一个总线周期访问该字变量;如果该字变量的地址为奇地址(即字变量的低字节在奇地址单元,高字节在偶地址单元),则8086要用两个连续的总线周期才能访问该字变量,每个周期访问一个字节。
                   图5-20  字节变量与宇变量的传送
(a)存储器结构;(b)偶地址字节传送;(c)奇地址字节传送;(d)偶地址字传送;(e)奇地址字传送
    2.“对准的”字与“未对准的”宇
    从表5-4可见,8086CPU能同时访问奇存储体和偶存储体中的一个字节,以组成一个存储字,要访问的16位字的低8位字节存放在偶存储体中,称为“对准的”字(aligned,又称为“对界的”),这是一种规则的存放字。对于“对准的”字,8086CPU只要一个总线周期就能完成对该字的访问;当要访问的16位字的低8位字节存放在奇存储体中,称该字为“未对准的”字(unaligned,又称为“未对界的”),这是一种非规则的存放字。必须用两个总线周期才能访问该宇。下面分析一个“未对准的”字的写入过程。
    在第一个总线周期中,如同对奇存储体写入字节一样,送出奇地址(A0=1),并发出 信号,然后由8086CPU把该字的低8位传送到数据总线的高8位(注意,发生了字节交换),写入存储器的奇存储体(低8位字节);然后,8086CPU又发出一个由该奇地址加1的偶地址,此时A0=0, ,8086CPU把该字的高8位传送到数据总线的低8位(注意,又发生了字节交换),写入存储器的偶地址区(偶存储体)。这样,经过两次存储器访问周期,把一个“未对准的”字写入存储器的两个存储体中。注意,上述操作对程序员而言是完全透明的。这一写入过程如图5-20所示。

本文标签:深圳自考 工学类 微型计算机原理及应用学习笔记 半导体存储器接

转载请注明:文章转载自(http://www.zikaosz.com

本文地址:http://www.zikaosz.com/zl_gxl/8719.html


《深圳自考网》免责声明:

1、由于考试政策等各方面情况的调整与变化,本网提供的考试信息仅供参考,最终考试信息请以省考试院及院校官方发布的信息为准。

2、本站内容部分信息均来源网络收集整理或来源出处标注为其它媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:812379481@qq.com

深圳自考-便捷服务