第三章习题重点:存储器扩展P.101存储器扩展•关键步骤:分析扩展前后总线数量的变化•数据线增加:字长扩展•地址线增加:存储容量扩展–一定需要片选CS!!!–片选:芯片选择(Chipselect)31、字长位数扩展•增加数据线•连接方式:三组信号线中,–地址线和控制线共用–数据线单独分开连接。RAM:1K×4位—1K×8位RAM11K×4RAM21K×4D3-D0A9-A0A9-A0D7-D0CSCSD7-D4CSA9-A052、字存储容量扩展•增加地址线,使得存储器单元数增加•连接方式:三组信号线中–地址总线和数据总线公用–多余的地址线用来片选RAM:1K×4位—2K×8位RAM11K×8RAM31K×4A10D7-D0A9-A0A9-A0A9-A0D7-D0CSCSD7-D073、字长、容量同时扩展•连接方式:三组信号线中–单元之内:字长扩展–字长扩展:芯片的控制线公用(包括片选CS和读写R/W)–单元之间:字数扩展–字数扩展:片选CS由地址总线的高位段译码来决定。1、20位地址,32位字长(1)多少信息存储量?20位地址:说明有220个存储单元,即1M32位字长:说明每个存储单元有32个bit一共:220×32bit=(220×32)/8B=220×4B=4MB1、20位地址,32位字长(2)由512K×8位的芯片构成,需要多少片存储器:1M×32位512K→1M:说明有容量扩展8位→32位:说明有字长扩展需要:(1M/512K)×(32位/8位)=2×4=81、20位地址,32位字长(3)需要多少位地址作为芯片选择512K×8位→1M×32位芯片选择只和地址线相关512K=219,即有19根地址线1M=220,即有20根地址线多余的一根地址线一定是做片选的∴需要1根地址线作为片选1、20位地址,32位字长(3)需要多少位地址作为芯片选择首先字长扩展:4片512K×8位芯片构成512K×32位字长单元字长扩展片选公用然后容量扩展:2个512K×32位单元构成1M×32位,容量扩展需要芯片选择2个单元只需要:1根地址线作为片选512K×8位—1M×32位RAM1字长扩展512K×8位—512K×32位容量扩展512K×32位—1M×32位CSRAM2CSRAM3CSRAM4CSRAM1字长扩展512K×8位—512K×32位CSRAM2CSRAM3CSRAM4CS3、16K×8位—64K×32位16K×8位—16K×32位—64K×32位需要4片,形成一个单元需要4个单元一定需要2根地址线进行片选16K:14根地址线64K:16根地址线多余两根地址线正好用于片选3、16K×8位—64K×32位RAM1字长扩展16K×8位—16K×32位容量扩展16K×32位—64K×32位CSRAM2CSRAM3CSRAM4CS16K×32位16K×32位16K×32位A13-A0A15A143、16K×8位—64K×32位错误:1、只看到了A13-A0,缺少A15、A142、数据总线、地址总线,一定要标明起止符号,例如A13-A0,D7-D03、三组信号线要全部标明3、16K×8位—64K×32位(2)存储器读写周期为0.5us,CPU在1us内至少要访存一次,用哪种刷新方式?答:假定16K×1位的DRAM芯片用128×128矩阵存储元构成采用集中刷新:对128行进行集中刷新,刷新周期需要128×0.5us=64us,暂停读/写,肯定不行采用分散刷新:每1us只能访存一次,不可以采用异步式刷新方式:刷新时只对128行进行异步方式刷新,则刷新间隔为2ms/128=15.6us,可取刷新信号周期15us。刷新一遍所用时间=15us×128=1.92ms3.3DRAM存储器-刷新周期•集中式刷新:在整个刷新间隔内,前一段时间重复进行读/写周期或维持周期,等到需要进行刷新操作时,便暂停读/写或维持周期,而逐行刷新整个存储器。3.3DRAM存储器-刷新周期•分散式刷新:把一个存储系统周期tc分为两半,周期前半段时间tm用来读/写操作或维持信息,周期后半段时间tr作为刷新操作时间。6、32K×8位—128K×16位(1)数据存储器:16位(2)地址寄存器:17位(3)需要多少个芯片:(128K/32K)×(16位/8位)=8片(4)组成框图6、32K×8位—128K×16位X错误1:没有标出数据线标号、地址线标号无法说明你是否清楚扩展细节错误2:地址线为何来自数据寄存器6、32K×8位—128K×16位32K×8位—32K×16位—128K×16位需要2片,形成一个单元需要4个单元一定需要2根地址线进行片选32K:15根地址线128K:17根地址线多余两根地址线正好用于片选6、32K×8位—128K×16位RAM1字长扩展32K×8位—32K×16位容量扩展32K×16位—128K×16位CSRAM2CS32K×16位32K×16位32K×16位A14-A0A16A157.某机器中,已知配有一个地址空间为(0000—1FFF)16的ROM区域,现在用一个SRAM芯片(8K×8位)形成一个16K×16位的RAM区域,起始地址为(2000)16。假设SRAM芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的)。要求:(1)满足已知条件的存储器,画出地址码方案。(2)画出ROM与RAM同CPU连接图。7.某机器中,已知配有一个地址空间为(0000—1FFF)16的ROM区域,现在用一个SRAM芯片(8K×8位)形成一个16K×16位的RAM区域,起始地址为(2000)16。假设SRAM芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的)。分析:一个RAM区,一个ROM区存储器参数:地址线:16根数据线:16根RAM和ROM一定都要符合。其中RAM需要容量扩展,ROM不需要7.某机器中,已知配有一个地址空间为(0000—1FFF)16的ROM区域,现在用一个SRAM芯片(8K×8位)形成一个16K×16位的RAM区域,起始地址为(2000)16。假设SRAM芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的)。分析:一个RAM区,一个ROM区其中RAM需要容量扩展由8K×8位芯片构成16K×16位8K×8位—8K×16位(字长扩展)—16K×16位(容量扩展)共需要4片芯片,每两片构成8K×16位单元字长扩展不改变地址分配,容量扩展才会改变7.某机器中,已知配有一个地址空间为(0000—1FFF)16的ROM区域,现在用一个SRAM芯片(8K×8位)形成一个16K×16位的RAM区域,起始地址为(2000)16。假设SRAM芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的)。要求:(1)满足已知条件的存储器,画出地址码方案。ROM:地址空间为(0000—1FFF)16RAM:起始地址为(2000)16解:CPU地址总线A15-A0,共16根地址线,地址码:ROM:0000000000000000—0001111111111111RAM:0010000000000000—由8K×8位芯片构成16K×16位需要4片芯片,构成两个8K×16位单元记为RAM1,RAM2ROM:地址空间为(0000—1FFF)16RAM:起始地址为(2000)16RAM:0010000000000000—RAM1、RAM2:8K×16位每个单元为13根地址线RAM1:0010000000000000—0011111111111111RAM2:0100000000000000—01011111111111110101111111111111解:CPU地址总线A15-A0,共16根地址线,地址码:ROM:0000000000000000—0001111111111111即:(0000—1FFF)16RAM1:0010000000000000—0011111111111111即:(2000—3FFF)16RAM2:0100000000000000—0101111111111111即:(4000—5FFF)16共16根地址线:0000000000000000—1111111111111111∴还剩下0110000000000000—1111111111111111为空闲区即:(6000—FFFF)16解:(1)7.某机器中,已知配有一个地址空间为(0000—1FFF)16的ROM区域,现在用一个SRAM芯片(8K×8位)形成一个16K×16位的RAM区域,起始地址为(2000)16。假设SRAM芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQ(当存储器读或写时,该信号指示地址总线上的地址是有效的)。要求:(1)满足已知条件的存储器,画出地址码方案。FFFF64K-8K-8K-8K=40K空闲区解:CPU地址总线A15-A0,共16根地址线,地址码:ROM:0000000000000000—0001111111111111RAM1:0010000000000000—0011111111111111RAM2:0100000000000000—0101111111111111最高1位A15空闲,A14、A13状态如下:•00:ROM•01:RAM1•10:RAM2(2)画出ROM与RAM同CPU连接图。(2)画出ROM与RAM同CPU连接图。ROMRAM1RAM2RAM3RAM4芯片有CS和WE控制端,CPU地址总线A15-A0,数据总线为D15-D0,控制信号为R/W(读/写),MREQRAM:8K×8位—16K×16位RAM11RAM12RAM21RAM22位扩展RAM1:8K×16位位扩展RAM2:8K×16位字扩展8K扩展为16KA13A14D15-D8D15-D8D7-D0D7-D0A12-A0A12-A0A12-A0D15-D0CSCSCSCSA158K×88K×8RAM+ROMRAM11RAM12RAM21RAM22A13A14D15-D8D15-D8D7-D0D7-D0A12-A0A12-A0A12-A0D15-D0CSCSCSCSA15ROMCSD15-D0A12-A0MREQR/W000110358、设存储器容量为64M,字长64位,模块数m=8,分别用顺序方式和交叉方式进行组织。存储周期T=100ns,总线传送周期=50ns。问顺序存储器和交叉存储器的带宽各是多少?解:顺序存储器和交叉存储器连续读出m=8个字的信息总量都是:q=64b×8=512b顺序存储器和交叉存储器连续读出8个字所需的时间分别是:t1=mT=8×100ns=8×10-7st2=T+(m-1)t=100ns+7×50ns=450ns=4.5×10-7s顺序存储器和交叉存储器的带宽分别是:W1=q/t1=512b÷(8×10-7)s=64×107b/sW2=q/t2=512b÷(4.5×10-7)s=113.8×107b/s36解:h=Nc/(Nc+Nm)=2420/(2420+80)=0.9681、r=tm/tc=240ns/40ns=6e=1/(r+(1-r)h)=1/(6+(1-6)×0.968)=86.2%ta=tc/e=40ns/0.862=46.4ns2、ta=htc+(1-h)tm=0.968×40ns+0.032×240ns=46.4nse=tc/ta=40ns/46.4ns=86.2%9:CPU执行一段