什么是内存解码?
数字电子电路是一种只处理具有两种状态的信号的电路:零或一。电路中的晶体管用于执行各种布尔逻辑。
在数字电子学中,当需要访问数字设备中的内存时,就会发生内存解码过程。在此过程中,生成二进制地址,以在系统中找到所需的内存。结果,创建的内存单元在内存地址的帮助下,可以找到请求的数据。此过程包括多个步骤,我们必须遵循这些步骤才能找到确切的内存。
在这里,在本文中,我们将讨论内存芯片的内部结构、解码过程以及内存解码过程中发生的不同组件。
内存的内部结构:
在内部结构中,用于选择单个字的二进制存储单元和相关的解码机制构成了具有m 个字和每个字 n 位的随机存取存储器的内部结构。在内存单元中,基本构建块是二进制单元。
在存储单元中,可以轻松存储一位信息。存储芯片由排列成矩阵的多个单元组成。
每行单元产生一个存储字,每行单元连接到一条公共线,也称为字线。字线由地址解码器控制。根据地址总线中存在的地址,在任何时候都会激活一条单字线。每列的单元格之间有两条线。位线就是所谓的。读出/写入电路将这些位线连接到数据输入和数据输出线。读出/写入读出或读取包含在由字线指定的单元中的信息,并在读取操作期间将其传输到输出数据线。读出/写入电路在写入操作期间获取信息。
要了解内存芯片的内部结构,可以看下图:
内存解码过程:
内存解码过程是一个多步骤过程,其中使用许多地址来标识特定的内存位置。发生了内存解码,其中需要访问数字电子设备中存储的内存。在接下来的过程中。
需要内存解码器从内存单元中选择内存指定的输入地址。在这里,记忆细胞在这个过程中起着至关重要的作用。
存储单元:单元是一种电路,包含四到六个晶体管。选定的输入使单元可以轻松处理读/写操作。在这个过程中,通过从锁存器到输出端创建一条线,读/写输入中的A 1执行读操作。而另一方面,通过构建从输入端到锁存器的路径,读/写中的A 0可以进行写操作。
至于单元的结构,通常,存储单元能够以不同的单位存储二进制信号,这些单位称为比特。最初,一位等于 8 位,一个字的值为 2 位。数据输入和输出线通过读/写操作在存储器之间进行通信。最初,它有助于确定信息的传输。在内存中,每个单词都有一个数字,称为地址。这些地址范围从 0 到 2k-1。这里,k指的是地址行号。
通常,小型 RAM 由四个字组成,每个字有 4 位,总共有 16 个二进制单元。二进制单元连同三个输入和一个输出一起代表小块单元 (BC)。在这里,用户需要两条地址线用于四个存储字。要从四个字中选择一个,地址输入需要通过一个 2:4 解码器,该解码器可以通过存储器启用输入启用。
在此过程中更进一步,在内存使能值为 0 的情况下,解码器中的所有输出都变为 0,并且没有一个被选择。如果内存选择值为 1,则将选择四个字中的 1 个。
读/写操作:这里,在选择字之后,读/写输入进行操作。在读操作过程中,所选字的四位通过或门到达输出端。
另一方面,在写操作中,输入线中的可用数据被传输到所选字之外的四个二进制单元中。在此过程中,未被选中的单元格变为虚拟单元格,其值保持不变。
内存地址解码:
在随机存取存储器中,有一个空闲空间,其中有数千个字地址可用。每个内存字都有一个值,范围从 1 到 64 位。这里,2k 字内的存储器使用 k 条存储器地址线,每个存储器字有 n 位。解码器由 2k 个内存地址组成,其中每个解码地址输出标识一个 n 位字以供进一步读取或写入。
这里地址线代表数据输入,也就是代码,输出代表一个字信号,可以是高电平也可以是低电平。在个人电脑和微处理器中,有一个内存芯片,每个芯片都有一个选定的输入。现在,要选择,需要指定存储芯片。
当单个芯片被选中并同时运行时。它允许用户为某个内存地址位置选择正确的内存地址编码设备。
示例:现在以 8088 为例,它为 1MB 内存地址空间创建 20 位地址作为输出。另一方面,EPROM BIOS 2716 只有 2KB 内存和 11 个地址引脚。现在,这里的 EPROM 可以放置在 1MB 地址空间的任何 2KB 部分,因为这里的解码器可以解码额外的 9 个地址引脚。
这可以借助下图来理解:
重合解码:
在重合解码中,具有 k 个输入的解码器创建具有 2k 值的输出。这种类型的解码器需要 2k 个与门,以及每个门的 k 个输入。在这里,通过将两个解码器组合成一个二维方案,可以减少门的总数和每个门的输入。
此外,在二维矩阵方法中,一个解码器用于行选择,另一个用于列选择。在这种情况下,使用两个 2k 输入而不是一个 k 输入。
这可以借助下图来理解:
示例:这里,在内存的 1K 字的选择方法中,可以选择两个 5 x 32 解码器,而不是使用 10 x 1,024 解码器。我们需要 1,024 个 AND 门,在单个解码器中每个输入有 10 个输入。
在两个解码器的情况下,我们需要 64 个与门,每个有五个输入。前 5 个最高有效位分配给输入 X,最后 5 个最低有效位分配给输入 Y。存储器阵列中的每个字都被选择为一个 X 行和一个 Y 输入重合的结果。
结果,内存中的单个单词由 32 行中的 1 个和 1 或 32 列之间的重合因子选择,总共近 1,024 个单词。在特定行和列的交叉处找到所需的单词。之后,读取/写入所有需要的字位。
地址复用:
地址多路复用允许用户使用较少的引脚,因此使用了处理器上的一些总线。可以将数据线上的地址放置在数据线上,而不是为地址和数据设置单独的总线,在该地址中,数据被读取并保存在先前读取的地址中。
详细地说,SRAM 或静态随机存取存储器中有六个晶体管。当晶体管尺寸较小时,就会产生高密度存储单元。
DRAM 或动态随机存取存储器还包括一个晶体管,使其具有比 SRAM 更大的存储容量。 SRAM 数据存储比 DRAM 数据存储更昂贵。 DRAM 更节能。
因为DRAM的字位大小为1,所以需要多个芯片。主要是因为容量增加;所有 DRAM 位的解码都是在一个二维数组中进行的,如果一个单元中有更多的内存数据,则需要几个数组。设计人员使用地址复用来减少集成电路中的引脚数量。
这里,地址被分成两部分,用于二维数组中的不同时间组。首先列出行的地址,然后是列的地址。由于内存地址的两侧使用了相同的引脚组,因此故意减小了总大小。
示例:在多路复用中,需要 64K 字存储器。二维单元数组被组织成 256 行和 256 列,然后构成内存地址。这给出了总共 64K 字的存储器。有两个地址选通脉冲、一条数据输入线、一条数据输出线、一个带有 8 位地址输入的读/写控制和一条数据输入线。行地址选通缩写为RAS,它激活八位存储器行寄存器。列地址选通被截断,因为 CAS 启用了 8 位列寄存器。选通符号顶部有一个条形,表示寄存器为空或处于信号的零电平。
这可以通过下图来理解:
到目前为止,我们已经介绍了内部结构和内存解码过程,以及本文中解码的不同方面。最后,我们可以说,存储器解码是访问数字电子电路存储器的一个重要而基本的方面。