当前课程知识点:微机原理与接口技术 > 第10周 半导体存储器扩展技术 > 第41讲 半导体存储器扩展 > 半导体存储器扩展_1
大家好
我们前面学了
有关半导体存储器的一些基本知识
我们也给大家介绍了
有关随机存取存储器RAM
和只读存储器ROM这样的一些芯片
那么这一讲我们来学习存储器的扩展技术
那么什么叫存储器的扩展技术呢
存储器的扩展技术可以简单的
用这样子的话来描述
也就是说用已有的存储器芯片
来构造一个需要的存储空间
这个最简单的例子
就是我们平时 比如我们买了一台计算机
我们买的这台机器它的配置只有4G的内存
但是我们希望有8G的内存
那么我们就再去买一个4G的内存条
这就是一种扩展
也就是我们现在已有的不论是芯片
还是内存条
也就是说如果我们具体来讲
就是说我们一个芯片
这个芯片呢有可能它的单元个数
或者说它每单元里的2进制位数
都不能满足我们现在的存储器的一个需求
这个时候我们就需要扩展
因此呢 存储器的扩展就是存储器容量的扩展
或者说在我们已有芯片的基础上
我们对这个容量的扩展
存储器芯片的存储容量我们在前面的
几讲里头我们已经看到
我们通常从芯片的那个级别上
我们会用这样子的描述方法
也就是说它的单元数
乘以每单元的位数
或者说每单元的字长
那么这个单元数
也可以称为字节数
因为我们说默认的情况下
内存我们认为每一个单元
它都是一字节长的
这是从逻辑上来讲都是这样
就相当于我们现在说
我们买了个4G的内存条
肯定是表示4G字节而不会是其他的含义
也就是这就是在 这样的一个语境下
就是默认每单元都是8位二进制码的情况
所以单元的个数我们也可以用字节数来描述
但是我们在前面学RAM或者ROM芯片的时候
我们实际上已经看到
并不是每一个存储器芯片
它的每一个单元
都一定是8位二进制码
也就是说从芯片的角度不一定是这样的
那么这种时候我们就是需要
有这样子的描述了
就是说它每个单元里的位数是不是
满足我们8位二进制码这样的要求
也就是说它的字长的要求
因此呢如果说字长不满足
我们就需要扩展字长
如果单元数不满足或者说字节数不满足
我们就需要扩展单元数
因此我们存储器扩展技术
就是用多片存储器芯片
构成一个需要的存储器空间
这个多片到底是多少片
那要根据具体的情况
有可能就是一片
比如我们现在说
我们就需要一个8K字节的存储器
而我们手上正好有SRAM6264
那么这个6264本身就是8K字节
那么一片就OK了 对吧
那么如果现在也是只有6264
但是我们需要构造一个32K字节的存储器
那么我们需要多少片呢
显然就需要4片
所以这个多片那要根据具体的情况来说
那么用多片存储器芯片
构造一个这样的存储器空间
那么为什么 或者说怎么样
能够保证它真正是
构造了这么大的存储器空间呢
这里头有这样一句话是非常重要的
也就是说各个存储器芯片
在整个内存中一定要占据不同的地址范围
这一点大家回忆一下我们前两讲
我们讲那个存储编码的时候我们曾今讲过
我们用那个4个字节的存储器芯片
就是这个虽然肯定实际是没有的
是个虚拟的
就是说一个4字节的一个存储器
我们要构造一个12字节的存储器
那么我们需要3片 对吧
那么如果要想保证我们真正的是
构造了一个12字节的存储器
我们一定要让这3片4字节的芯片
每一片都要有不同的地址范围
所以当时我们说这四个芯片虽然在片内
它的地址都是从00到11 它的编码
但是为了区分这3个芯片
每一个芯片的00和11
所以我们必须加高位地址
也就是说第一片芯片它的高位地址是00
第二片芯片高位地址是01
这样子的话才能够保证
这三个芯片每个芯片都有不同的地址范围
这样也就才达到了我们真正能够
实现12个字节存储器这样的一个需要
或者这样一个目标
那么所以在存储器扩展里头
这一点是非常重要的
一定要保证每个芯片
在整个内存中占据不同的地址
但是这句话我们现在先放在这里
我们等一下大家会发现在有的情况下
我们是绝对不能这样的
那么在什么情况下不能
什么情况下又必须
这个就是我们下边讲存储器扩展技术的时候
希望大家注意的一点
这里这句话其实是对这个
第二句话的一个支撑
或者一个解释
既然每个存储器芯片都要有不同的地址范围
那么任意一个时刻只有一片
必须也仅有一片能够被选中
但是为什么在这括号里出现或一组呢
这就是刚才我说的
有些情况下我们多片存储器芯片
必须具有同样的地址范围
这个是为什么我们下边来讲
解释的时候会给大家讲
那么这个地方我们先把悬念留在这里
那么我们现在假设把这一组
这个圆括号的东西忽略掉
我们还回到我们刚才说的那样子
讲编码那一讲的时候那个语境
也就是说4个字节的存储器芯片我们要
构造一个12字节的存储空间
那么我们这4片芯片
一定要有不同的地址范围
这样才能确定地保证我们不是
4个字节而真正地达到了12个字节
大家可以想如果我们没有高2位的地址
也就是说那个芯片地址
我们只有低2位的00和11
那么我们这3片芯片虽然你物理上放了3片
但是实际上
我们用MOVE指令往零号单元写的时候
因为这3个芯片的第一个单元地址都是0
我们写一次三个单元里全部写完
所以写4次就3个芯片都写满了
所以从我们程序员的角度
我们认为它还是只有4个字节
而不是有12个字节
因此我们加了高位地址
用来区分这3个芯片的地址范围
那么为了保证真正的区分
而且我们任意一个时刻
我们只能针对一个单元来进行操作
也就是说我们要寻址的任何一个单元
不管是字节单元还是字单元
它都肯定在一个芯片上
所以呢
在任意一个时刻只能有一个芯片被选中
刚才我们介绍了
存储器芯片的容量是由单元数
乘以每单元的位数
我们单元数又称为字节数
每单元的位数又称为字长
那么如果我们每单元都是8位字长
那么单元的个数不够我们就需要扩展单元
比如就像我们说我们只有4G的内存条
我们现在要扩展成8G
那么显然是因为单元数不够
但是有些情况下呢
我们单元数可能是够的
我们现在就是4G
但是问题是我们现在手上有的芯片
这个芯片上虽然有4G个单元
但是它每个单元里不是8位二进制码
那么也就是说它的字长不够
这个时候我们就要保证它一定要变成8位字长
因此我们存储器扩展技术
就包括了这样几个层面
首先我们可能需要位扩展
也就是当我们字长不够的时候
我们需要扩展它的字长
我们这个叫做位扩展
如果字长是够的
也就是每单元里都是一字节数
而单元个数不够
那么这个时候我们就要扩展字节数
所以我们就要字扩展
如果两者都不够
那么加起来就叫字位扩展
下面我们分别把这三种
我们来给大家做简单的介绍
位扩展就是构成内存存储器芯片
它的字长小于我们需要的每单元里
都是一字节这样的字长的时候
我们需要进行位扩展
位扩展就是扩展单元的字长 这个没问题
我们用一个实例芯片来给大家解释
什么是位扩展
这个芯片本来我们应该在讲那个RAM这个
这一讲的里头给大家介绍
但是因为DRAM我们上次讲过
我们说因为它需要比较复杂的外围控制电路
因为它有一个定时刷新的这样子的一个需要
所以我们没有在一般的RAM芯片这一讲里头
详细的给大家介绍
那么我们在扩展技术里头 我们从这个角度
我们用这个型号的芯片给大家解释一下DRAM
这个型号虽然很古老
但是它也体现了今天DRAM芯片的一种特点
这个型号是2164A
它的容量是64K×1位的
从这个容量上大家可以看到
这个芯片它的单元个数倒是蛮多 64K个
但是它每单元里只有一位二进制码
显然不满足我们每单元要求
必须是一字节这样的一个需要
所以用这种芯片
它一片芯片是没有办法构造一个存储器的
这个芯片因为
它每单元里都只有1位二进制码
所以它在内部的结构上
是像这样矩阵形式来进行排列的
就是说每个单元
它都是有行地址和列地址去标称
为什么样这样子呢
这样子大家可以看的出来
它实际上可以减少这个芯片的体积
因为它可以减小它的引脚数量
引脚数一旦减少了它的体积就减少了
因为64K个单元 从我们前面讲RAM芯片
甚至我们的ROM型芯片
从那个理念上我们都知道
要寻址64K个单元
我们也就是说要产生64K个地址编码
那么得多少位片内地址呢
显然得16位
因为2的16次方正好等于64K
但是对于这个芯片来讲
因为它每单元只有一位
所以它一旦采用这种结构
它就可以行列地址分开
那么行列分开以后
它就可以分时复用一些地址信号
因此 它的地址信号线就只有
同等容量的RAM型芯片 它的一半
也就是说它实际上只有8根片内地址
而通过行列地址来分时传送
来控制或者选中某一个具体的单元
这个芯片详细的一些技术参数
我们不在这里介绍了
我们主要把它引出
就是希望用它做案例
来了解怎么样做位扩展
因为这个芯片它的每个单元里
都只有一位二进制码
所以对于这样的一个芯片
独立的一片芯片是没有任何意义的
就像我们之前在讲存储器
我们开篇应该在第一周的课程里
我们给大家看到过存储条
存储条我当时特意的提醒大家
就是说这个条上不是一个芯片
有8个芯片 就那黑黑的小框框
那么为什么要8个芯片
实际上就是这个意思
我们特意选了一个类似这样的芯片
这个芯片你看
我们每个单元里只有1位二进制码
一位二进制码那意思就是说
它这一片芯片它
根本不可能构成一个我们用的存储器
我们的存储器每单元里一定要8位二进制码
所以它至少要用8片芯片
它来能够构成一个我们需要的存储空间
因此对于这样子的
每单元字长不够1字节的这种芯片
它一片芯片是没有任何意义的
-第1讲 关于本课程
--关于本课程
-第2讲 微型计算机系统
--微机系统_01
--微机系统_02
-第3讲 微型计算机一般工作过程
-第4讲 数制与编码
--计算机中的编码
-第5讲 计算机中数的表示与运算
--数的表示
--符号数的表示
--数的表示与运算
-第6讲 基本逻辑运算与逻辑电路
-第7讲 本周小结
--本周小结
-第1周 微型计算机基础概论--第一周单元测验
-第8讲 8088微处理器
-第9讲 8088 CPU主要引线及机构
-第2周 8088微处理器--第二周单元测验
-第10讲 实模式存储器寻址
-第11讲 8088系统总线
--8088系统总线
-第12讲 微处理器小结
--微处理器小结
-单元测验--作业
-第13讲 指令概述
--指令概述
-第14讲 寻址方式
--寻址方式
-第15讲 通用数据传送指令
-第16讲 地址传送指令
--地址传送指令
-第17讲 输入输出指令
--输入输出指令
-第4周 数据传送指令--第四周单元测验
-第18讲 算术运算指令
--加法运算指令
--减法指令
--乘除运算指令
-第19讲 逻辑运算指令
-第20讲 移位操作指令
--移位操作指令
-第5周 算术运算、逻辑运算与移位操作指令--第五周单元测验
-第21讲 关于串操作指令的说明
--串操作指令说明
-第22讲 串传送与串比较
--串传送与串比较
-第23讲 串扫描指令
--串扫描指令
-第24讲 串装入与串存储指令
-第六周单元测验--作业
-第25讲 程序控制指令说明
-第26讲 转移类指令
--无条件转移指令
--条件转移指令
-第27讲 循环控制指令
--循环控制指令
-第28讲 过程调用指令
--过程调用指令
-第29讲 中断指令
--中断指令
-第30讲 处理器控制指令
--处理器控制指令
-第31讲 指令系统小结
--指令系统小结
-第7周 程序与处理器控制--第七周单元测验
-第7周 程序与处理器控制--第七周作业
-第32讲 汇编语言源程序
-- 汇编语言源程序_01
-- 汇编语言源程序_02
-第33讲 伪指令
--数据定义伪指令
--其它伪指令
-第34讲 系统功能调用
-第35讲 汇编语言程序设计示例详解
--程序设计示例1
-第36讲 汇编语言程序设计小结
-第8周 汇编语言程序设计--第八周单元测验
-第8周 汇编语言程序设计--第八周作业
-第37讲 半导体存储器概述
--半导体存储器概述
-第38讲 内存单元编址
--存储单元编址
-第39讲 随机存取存储器RAM
-- RAM_01
--RAM_02
-第40讲 只读存储器ROM
--ROM_01
--ROM_02
-第九周单元测验--作业
-第41讲 半导体存储器扩展
--存储器扩展_2
-第42讲 半导体存储器小结
--半导体存储器小结
-第十周单元测验--作业
-第十周作业--作业
-第43讲 基本I/O接口
-第44讲 简单接口芯片
--简单接口芯片
-第45讲 基本输入输出方法
--基本I/O方法
-第46讲 简单I/O控制系统设计
-第47讲 中断技术
--中断技术1
--中断技术2
-第48讲 输入输出与中断技术小结
--本周小结
-第十一周单元测验--作业
-第49讲 可编程定时计数器
-第50讲 可编程并行接口
-第51讲 可编程接口小结
--本周小结_01
--本周小结_02
-第十二周单元测验
-第52讲 模拟量的输入输出
--模拟量的输入输出
-第53讲 D/A转换器
-第54讲 A/D转换器
-- A/D转换器_01
-第十三周单元测验--作业
-第55讲 I/O接口系统综合设计示例详解I
-第56讲 综合设计示例详解II
-第57讲 结束语
--结束语