设CPU有16根地址线,8根数据线,并用MREQ作为访存控制信号 (低电平有效),用WR作为读/写控制信号(高电平为读,低电平为写)。 现有下列存储芯片:1K×4位RAM,4K×8位RAM,8K×8位RAM,2K×8位 ROM,4K×8位ROM,8K×8位ROM及74138译码器和各种门电路。 试从上述规格中选用合适的芯片,画出CPU和存储器的连接图。要求如下: (1)主存地址空间分配:6000H-67FFH为系统程序区,6800H-6BFFH为用户程序区。 (2)合理选用上述存储芯片,说明各选几片。 (3)详细画出存储芯片的片选逻辑图。
时间: 2023-03-10 22:54:38 浏览: 1271
答:根据给定的要求,可以选择8K×8位RAM和4K×8位ROM,分别用于系统程序区和用户程序区。8K×8位RAM可以容纳8K×8位程序,其中6000H-67FFH(8K)为系统程序区,6800H-6BFFH(4K)为用户程序区。4K×8位ROM可以容纳4K×8位程序,用于存放用户程序。连接图可以如下所示:CPU的地址线A0~A15连接到RAM的地址线A0~A15和ROM的地址线A0~A15,CPU的数据线D0~D7连接到RAM的数据线D0~D7和ROM的数据线D0~D7,MREQ连接到RAM的片选线,WR连接到ROM的片选线,最后,CPU的片选线连接到74138译码器和各种门电路。
相关问题
对下面这道题进行解释:设CPU有16根地址线、8根数据线,并用MREQ作为访存控制信号(低电平有效),用WR作为读/写控制信号(高电平为读,低电平为写)。现有下列存储芯片:1K×4位RAM、2K×8位RAM、4K×8位RAM、4K×4位ROM、4K×8位ROM、8K×8位ROM。要求:最小4K为系统程序区,4096~16383为用户程序区。 (1)写出对应的二进制地址码。 (2)确定芯片的数量及类型。 (3)分配地址线、确定片选信号。
我明白了,这是一道计算机组成原理中的题目。根据题目要求,可以得到如下解答:
(1)二进制地址码:
- 16根地址线可以寻址2^16个不同的地址,即最大地址为2^16-1=65535。
- 最小4K为系统程序区,即0~4095。
- 4096~16383为用户程序区,共计12288个地址。
- 因此,系统程序区需要12位二进制地址码(2^12=4096),用户程序区需要14位二进制地址码(2^14=16384)。
- 由于地址线只有16根,因此只需要使用系统程序区和用户程序区的最高位来选择不同的芯片,其余的位用于选择芯片内的地址。
- 因此,系统程序区和用户程序区的最高位分别为1和0,即二进制地址码的前两位为“10”和“00”。
- 剩余的12位和14位二进制地址码分别用于选择芯片内的地址。
(2)芯片数量及类型:
- 系统程序区需要的存储器容量为4K,可以选择1个4K×8位ROM芯片。
- 用户程序区需要的存储器容量为12K,需要至少选择1个8K×8位ROM芯片和1个4K×8位ROM芯片,总共需要2个ROM芯片。
- 另外,还需要1个1K×4位RAM芯片用于存储变量等数据,以及1个2K×8位RAM芯片用于存储栈等数据。因此,总共需要4个芯片,分别为1个4K×8位ROM、1个8K×8位ROM、1个1K×4位RAM和1个2K×8位RAM。
(3)地址线分配和片选信号:
- 系统程序区和用户程序区的最高位分别为1和0。
- 系统程序区和用户程序区的地址线分配如下:
- 系统程序区:A15=1,A14=0,A13~A0用于选择ROM芯片内的地址。
- 用户程序区:A15=0,A14=0,A13~A0用于选择ROM芯片内的地址。
- RAM芯片不需要选择片选信号,直接使用MREQ控制信号和WR读/写控制信号即可。
- ROM芯片需要选择片选信号,可以使用系统程序区和用户程序区的最高位来选择不同的芯片。因此,需要两个片选信号:
- 系统程序区的片选信号:CS1=0,CS2=1。
- 用户程序区的片选信号:CS1=1,CS2=0。
- 注意,MREQ和WR的电平与题目中的描述相反,应该是MREQ为高电平有效,WR为低电平有效。
4、设 CPU 有 16 根地址线,8 根数据线,并用 MREQ/作访存控制信号(低电平有效),用 WE/ 作读/写控制信号(高电平为读,低电平为写)。现有若干 8K*8 位的 ROM,16K*1 位的 RAM,2K*4 位的 RAM,3/8 译码器和各种门电路。要求:最小 8K 地址为系统程序区,与其相邻的 16K 为用户程序区,最大 4K 为系统程序工作区,请回答: (1)每个区选用什么芯片,各需要多少片? (2) 分析每个区域的地址空间分配? (3)设存储器的读写周期为 0.5us,CPU 在 1us 内至少要访问内存一次。采用哪种刷新方式较合理。两次刷新的最大时间间隔是多少?两行的刷新间隔?
(1) 系统程序区需要8K*8位的ROM,共1片;用户程序区需要16K*1位的RAM,共2片;系统程序工作区需要2K*4位的RAM,共1片。
(2) 最小8K地址为系统程序区,地址空间为0000H-1FFFH;与其相邻的16K为用户程序区,地址空间为2000H-5FFFH;最大4K为系统程序工作区,地址空间为FC00H-FFFFH。
(3) 由于CPU在1us内至少要访问内存一次,因此需要使用动态RAM,并采用刷新方式。由于2K*4位的RAM需要4个地址引脚,因此需要使用3/8译码器进行地址译码。每个RAM芯片需要进行256次刷新,刷新周期为0.5us,因此每个RAM芯片的刷新时间为128us。采用两次刷新的方式,最大刷新时间间隔为256us。由于同一行的两个RAM芯片需要同时刷新,因此两行的刷新间隔为512us。
因此,最合理的刷新方式是采用两次刷新的方式,最大刷新时间间隔为256us,两行的刷新间隔为512us。
阅读全文