微机原理与接口技术 漆强版 第5章 作业答案.docx
《微机原理与接口技术 漆强版 第5章 作业答案.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术 漆强版 第5章 作业答案.docx(17页珍藏版)》请在冰豆网上搜索。
![微机原理与接口技术 漆强版 第5章 作业答案.docx](https://file1.bdocx.com/fileroot1/2023-1/31/31705175-227b-4a8e-bfca-cec9229b3cdb/31705175-227b-4a8e-bfca-cec9229b3cdb1.gif)
微机原理与接口技术漆强版第5章作业答案
5.10用16K×1位的DRAM芯片组成64K×8位存储器,要求:
(1)画出该存储器的组成逻辑框图。
(2)设存储器读/写周期为0.5μS,CPU在1μS内至少要访问一次。
试问采用哪种刷新方式比较合理?
两次刷新的最大时间间隔是多少?
对全部存储单元刷新一遍所需的实际刷新时间是多少?
(1)组建存储器共需DRAM芯片数N=(64K*8)/(16K*1)=4*8(片)。
每8片组成16K×8位的存储区,A13~A0作为片内地址,用A15、A14经2:
4译码器产生片选信号
,逻辑框图如下(图有误:
应该每组8片,每片数据线为1根)
(2)设16K×8位存储芯片的阵列结构为128行×128列,刷新周期为2ms。
因为刷新每行需0.5μS,则两次(行)刷新的最大时间间隔应小于:
为保证在每个1μS内都留出0.5μS给CPU访问内存,因此该DRAM适合采用分散式或异步式刷新方式,而不能采用集中式刷新方式。
●若采用分散刷新方式,则每个存储器读/写周期可视为1μS,前0.5μS用于读写,后0.5μS用于刷新。
相当于每1μS刷新一行,刷完一遍需要128×1μS=128μS,满足刷新周期小于2ms的要求;
●若采用异步刷新方式,则应保证两次刷新的时间间隔小于15.5μS。
如每隔14个读写周期刷新一行,相当于每15μS刷新一行,刷完一遍需要128×15μS=1920μS,满足刷新周期小于2ms的要求;
需要补充的知识:
刷新周期:
从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍为止的时间间隔。
刷新周期通常可以是2ms,4ms或8ms。
DRAM一般是按行刷新,常用的刷新方式包括:
●集中式:
正常读/写操作与刷新操作分开进行,刷新集中完成。
特点:
存在一段停止读/写操作的死时间,适用于高速存储器。
(DRAM共128行,刷新周期为2ms,读/写/刷新时间均为0.5μS)
●分散式:
一个存储系统周期分成两个时间片,分时进行正常读/写操作和刷新操作。
特点:
不存在停止读/写操作的死时间,但系统运行速度降低。
(DRAM共128行,刷新周期为128μs,tm=0.5μS为读/写时间,tr=0.5μS为刷新时间,tc=1μS为存储周期)
●异步式:
前两种方式的结合,每隔一段时间刷新一次,只需保证在刷新周期内对整个存储器刷新一遍。
5.11若某系统有24条地址线,字长为8位,其最大寻址空间为多少?
现用SRAM2114(1K*4)存储芯片组成存储系统,试问采用线选译码时需要多少个2114存储芯片?
该存储器的存储容量=224*8bit=16M字节
需要SRAM2114(1K*4)存储芯片数目:
片
注:
上述分析有错,采用线选译码,显然用于字选的地址线应该为10根(对应于1k的芯片存储容量),那么余下24-10=14根地址线可用于片选,因此需要SRAM2114(1K*4)存储芯片数目应该为:
14组*2片/组=28片。
5.12在有16根地址总线的机系统中画出下列情况下存储器的地址译码和连接图。
(根据答案改的题目)
(1)采用8K*8位存储芯片,形成64KB存储器。
(2)采用8K*8位存储芯片,形成32KB存储器。
(3)采用4K*8位存储芯片,形成16KB存储器。
由于地址总线长度为16,故系统寻址空间为
(1)8K*8位存储芯片字选地址长度为13,64KB存储器需要8个8K*8位存储芯片,故总共需要3根地址总线用于片选,地址译码为:
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
共需8片8K*8位存储芯片
红色为片选
第一片
地址范围
0000H~
1FFFH
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第二片
地址范围
2000H~
3FFFH
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
第三片
地址范围
4000H~
5FFFH
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第四片
地址范围
6000H~
7FFFH
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
第五片
地址范围
8000H~
9FFFH
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第六片
地址范围
0A000H~
0BFFFH
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
第七片
地址范围
0C000H~
0DFFFH
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第八片
地址范围
0E000H~
0FFFFH
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
其连线图如下:
(2)8K*8位存储芯片地址长度为13,32KB存储器需要4个8K*8位存储芯片故总共需要15根地址总线,地址译码为:
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
共需4片8K*8位存储芯片
红色为片选
紫色用于决定地址范围
第一片
地址范围
0000H~
1FFFH
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第二片
地址范围
2000H~
3FFFH
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
第三片
地址范围
4000H~
5FFFH
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第四片
地址范围
6000H~
7FFFH
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
其连线图如下:
(3)4K*8位存储芯片地址长度为12,16KB存储器需要4个4K*8位存储芯片故总共需要14根地址总线,地址译码为:
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
共需4片4K*8位存储芯片
红色为片选
紫色用于决定地址范围
第一片
地址范围
0000H~
0FFFH
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
第二片
地址范围
1000H~
1FFFH
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第三片
地址范围
2000H~
2FFFH
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
第四片
地址范围
3000H~
3FFFH
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
其连线图如下:
方案一:
注:
Q1、Q2、Q3、Q4要有有效输出,则须C口输入为0,此时须确保为0时C口输入为0,则A14、A15信号线之后须用一个或门。
方案二:
注:
Q0、Q1、Q2、Q3分别对应A15、A14、A13分别取000、001、010、011时的值,可通过A12进行选择,上图有错(不对应答案中的地址);上图的地址应该是:
第一片0000(A15、A14、A13、A12),第二片0011(A15、A14、A13、A12),第三片0100(A15、A14、A13、A12),第四片0111(A15、A14、A13、A12);正确的连法应该是第一、二片均从Q0接,而不是分别接Q0、Q1;第三、四片均接Q1,而不是分别接Q2、Q3。
若上图中片选CS低电平有效,则应该采用或门(地址会产生变动)。
5.13试为某8位计算机系统设计一个具有8KBROM和40KBRAM的存储器。
要求ROM用EPROM芯片2732组成,从0000H地址开始;RAM用SRAM芯片6264组成,从4000H地址开始。
查阅资料可知,2732容量为4K×8(字选线12根),6264容量为8K×8(字选线13根),因此本系统中所需芯片数目及各芯片地址范围应如下表所示:
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
共需2片2732构成系统ROM
红色为片选
紫色由地址取值范围决定(0000H开始)
第一片
地址范围
0000H~
0FFFH
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
第二片
地址范围
1000H~
1FFFH
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
共需5片6264构成系统RAM
红色为片选
第一片
地址范围
4000H~
5FFFH
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
第二片
地址范围
6000H~
7FFFH
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
第三片
地址范围
8000H~
9FFFH
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
1
1
1
1
1
1
1
1
1
1
1
第四片
地址范围
0A000H~
0BFFFH
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
第五片
地址范围
0C000H~
0DFFFFH
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
硬件连线方式之一如下图所示:
说明:
①8位微机系统地址线一般为16位。
采用全译码方式时,系统的A0~A12直接与6264的13根地址线相连,系统的A0~A11直接与2732的12根地址线相连。
片选信号由74LS138译码器产生,系统的A15~A13作为译码器的输入。
②各芯片的数据总线(D0~D7)直接与系统的数据总线相连。
③各芯片的控制信号线(RD、WR)直接与系统的控制信号线相连。
5.14试根据下图EPROM的接口特性,设计一个EPROM写入编程电路,并给出控制软件的流程。
EPROM写入编程电路设计如下图所示:
控制软件流程:
(1)上电复位;
(2)
信号为电平”1”无效(写模式),
信号为电平”0”有效(编程控制模式),软件进入编程状态,对EPROM存储器进行写入编程操作;
(3)高位地址译码信号
为电平”1”无效,对存储器对应0000H~3FFFH地址的数据依次进行写入操作(其中高位地址为0、低位地址
从0000H到3FFFH依次加1)写入的值为数据总线D0~D8对应的值。
(4)高位地址译码信号
为电平”0”有效,对存储器对应4000H~7FFFH地址的数据依次进行写入操作(其中高位地址为1,低位地址
从0000H到3FFFH依次加1)写入的值为数据总线D0~D8对应的值。
(5)存储器地址为7FFFH时,写入操作完成,控制软件停止对EPROM的编程状态,释放对
信号和
信号的控制。
5.15试完成下面的RAM系统扩充图。
假设系统已占用0000~27FFH段内存地址空间,并拟将后面的连续地址空间分配给该扩充RAM。
译码器输出
A15~A14
A13
A12
A11
A10~A0
地址空间
/Q0
00
0
0
0
0000000000~11111111111
0000H~07FFH
/Q1
0
0
1
0800H~0FFFH
/Q2
0
1
0
1000H~17FFH
/Q3
0
1
1
1800H~1FFFH
/Q4
1
0
0
2000H~27FFH
/Q5
1
0
1
0
000000000~1111111111
2800H~2BFFH
1
2C00H~2FFFH
/Q6
1
1
0
/Q7
1
1
1
下面方案的问题:
1.地址不连续,驱动设计可能会比较麻烦;
2.地址重复,浪费系统地址空间;
3.不容易理解,实际上使用可能会有问题;
5.16某计算机系统的存储器地址空间为A8000H~CFFFFH,若采用单片容量为16K*1位的SRAM芯片,
(1)系统存储容量为多少?
(2)组成该存储系统共需该类芯片多少个?
(3)整个系统应分为多少个芯片组?
(1)该计算机系统的存储器地址空间为A8000H~CFFFFH,系统存储容量为:
(2)单片容量为16K*1为的SRAM芯片的存储容量为16Kbit=2KB
组成该存储系统共需该类芯片160KB/2KB=80个
(3)题目未给出该系统的数据位宽为多少,此处设为8bit位宽
则每组芯片组需要8个单片容量为16K*1为的SRAM芯片
所有整个系统应分为80/8=10个芯片组。
5.17由一个具有8个存储体的低位多体交叉存储体中,如果处理器的访存地址为以下八进制值。
求该存储器比单体存储器的平均访问速度提高多少(忽略初启时的延时)?
(1)10018,10028,10038,…,11008
(2)10028,10048,10068,…,12008
(3)10038,10068,10118,…,13008
此处题目有误,10018应为
,依次类推
低位多体交叉存储体包含8个存储体,故处理器每次可同时访问相邻8个地址的数据
(1)访存地址为相邻地址,故存储器比单体存储器的平均访问速度提高8倍;
(2)访存地址为间隔2个地址,故存储器比单体存储器的平均访问速度提高4倍;
(3)访存地址为间隔3个地址,但访存地址转换为十进制数为3、6、9、12、15、18、21、24、27,分别除8的余数为3、6、1、4、7、2、5、0、3,故存储器比单体存储器的平均访问速度提高8倍。
注:
如果是8体交叉存储体,则低3位二进制用于片选,高位用于字选。
八进制到二进制的转换为一位八进制对应于三位二进制。
(1)转为二进制则为
001000000001001000000010001000000011001000000100001000000101001000000110001000000111001000001000
001000001001001000001010001000001011001000001100001001000101001000001110001000001111001000002000……
用于片选的低三位变化规律为
001010011100101110111000001010011100101110111000001010011100101110111000
可见连续8个地址在同一个总线周期中可以得到访问,因此速度提高至8倍。
(2)分析同题
(1)
用于片选的低三位地址变化规律为:
010100110000010100110000010100110000010100110000
因此连续四个地址可以同时被访问,因此速度提高至4倍。
(3)分析同题
(1)
用于片选的低三位地址变化规律为:
011110001100111010101000011110001100111010101000011110001100111010101000
因此连续八个地址可以同时被访问,因此速度提高至8倍。
最后三位的变化规律是:
3、6、9、12、15、18、21、24,除以8后的余数分别为:
3、6、1、4、7、2、5、0,这意味首它们的最低三位尾数(二进制)不同,因此可以同时访问;前8个地址之后,后续的8个地址相当于:
24+(3、6、9、12、15、18、21、24),除以8后的余数分别也为3、6、1、4、7、2、5、0,可见后续8个数也可以同时被访问;余此类推,第n组8个数为24*(n-1)+(3、6、9、12、15、18、21、24),除以8后,余数照样按照3、6、1、4、7、2、5、0的规律在变化。
综上所述,速度应该提高至单存储体存储器的8倍。