1.假定一个系统的物理地址空间大小为为512MB,按字节编址,每次读写操作最多可以一次存取32位。则存储器地址寄存器MAR和存储器数据寄存器MDR的位数分别为( )。

A.29,8

B.29,32

C.27,8

D.27,32


2.下面有关半导体存储器的叙述中,错误的是( )。

A.主存由RAM和ROM构成,它们都是一种半导体存储器

B.半导体存储器都采用随机访问方式进行读写

C.SRAM是静态随机访问存储器,可以用作Cache

D.DRAM是动态随机访问存储器,主存RAM用DRAM芯片实现


3.某机主存储器有16位地址,每个存储单元有8位,问:

①如果用1K×4位的RAM芯片构成该存储器,需要多少片芯片?

②该存储器能存放多少字节的信息?

③片选逻辑需要多少位地址?


4.用64K×1位的DRAM芯片构成256K×8位的存储器,要求:

①计算所需芯片数

②采用异步刷新方式,如每单元刷新间隔不超过2ms,则刷新信号周期是多少?

③如采用集中刷新方式,存储器刷新一遍最少用多少读/写周期?


5.假设CPU有16根地址引脚,8根数据引脚,并用MREQ作为访存控制信号(低电平有效),用WR作读/写控制信号(低电平为写,高电平为读)。现有下列存储器芯片:1KX4位RAM、4KX8位RAM、8KX8位RAM、2KX8位ROM、4KX8位ROM、8KX8位ROM,另外有74LS138译码器和各种门电路。要求满足以下主存地址空间分配:

6000H~67FFH为系统程序区

6800H~6BFFH为用户程序区

请画出CPU与存储器的连接图,并详细画出片选逻辑。


6.某计算机主存8M字节,分成4096个主存块,Cache有64K字节,采用直接映象方式。请问:

①Cache有多少个字块?

②Cache的字块内地址为多少位?

③Cache的字块地址为多少位?

④Cache的字块地址为多少位?


7.一个组相联高速缓存由64个字块组成,每个字块有256字,分为8组,主存有4096个字块。请问:

①主存地址有多少位?

②主存地址的划分如何?即:标志字段、组字段和块内地址字段各有多少位?


8.某计算机有64K字节的主存和4K字节的Cache,Cache每组4字块,每字块64字节。存储系统按组相联方式工作。请问:

①主存地址的标志字段、组字段和块内地址字段各有多少位?

②若Cache原来是空的,CPU依次从0号地址单元顺序访问到4344号单元,采用LRU替换算法。若访问Cache的时间为20ns,访问主存的时间为200ns,试估计CPU访存的平均时间。


9.假定Cache1采用直接映射方式,有16个块,每块大小为1个字;Cache2也采用直接映射,块大小为4个字,共4个块。Cache1的失靶损失为8个时钟,Cache2的失靶损失为11个时钟。假设Cache开始时为空,要求:

① 找到一个访存地址序列,能使Cache2的失靶率比Cache1的失靶率低但失靶所花的总时钟数比Cache1多。

② 找到一个访存地址序列,使得Cache2的失靶率比Cache1的失靶率还高。

(假定采用字地址)


10.假定一个分页虚拟存储器系统,按字节编址,逻辑地址有36位,页大小为16KB,物理地址位数为32位,页表中有效位和修改位各占1位、使用位和存取方式位各占2位,而且所有虚拟页都在使用中。请问:

① 每个进程的页表大小为多少?

② 如果所使用的快表中总的表项数为256项,采用2路组相联Cache实现,则快表的大小至少为多少?