锁存器
常说的锁存器其实就是电平触发的触发器
触发器
常说的触发器是边沿触发器
寄存器
寄存器是能够存储一组二值代码的电路结构,因为触发器只能怪存储一位二值代码,所以N个触发器(锁存器)组成的寄存器可以存储N位的二值代码。
所以N位寄存器 = N个 触发器(锁存器)构成的电路
一、半导体存储器
半导体存储器因为存储单元数量庞大,所以不能像寄存器那样把所有的输入输出引出,为了解决这个矛盾,在存储器中,给每个单元编了一个地址,只有被输入地址代码指定的存储单元才能与公用的输入引脚接通,进行数据的读写。
半导体存储器种类很多,从功能上可以分为随机存储器(Random-Access Memory,RAM)和只读存储器(Read-Only Memory,ROM)
1、随机存储器(RAM)
随机存储器在正常工作时,可以向里面写入、修改和读出数据。
根据工作原理不同,随机存储器又分为两种:静态随机存储器(SRAM) 和 动态随机存储器(DRAM)
静态随机存储器(SRAM)
静态随机存储器(SRAM)在工作时,只需要通电,数据就不会丢失。
SRAM通常由存储阵列、地址译码器和读/写控制电路(输入/输出电路)三部分组成
存储阵列,由多个存储单元组成。
地址译码器,分为行地址译码器和列地址译码器。其中行地址译码器用于选通某一行的数据,而列地址译码器用于选通某一列的数据,这样就可以确定具体某个数据了。
读/写控制电路,用于选择时从存储器读取数据还是写入数据。从输入信号 R/W’ 可以看出,当输入高电平 R/W’ = 1,代表读取数据,;当输入低电平 R/W’ = 0,代表写入数据。
还有一个片选信号CS’,当CS’ = 0时,RAM为正常工作状态;当CS’ = 1时,RAM所有输入输出端均为高阻态。
动态随机存储器(DRAM)
动态存储器因为电路简单,所以在大容量、高集成度的RAM中使用很多,比如说常用的SDRAM、DDR等。
动态存储器利用MOS电容可以存储电荷的原理支撑的,而MOS电容的容量很小(几pf),而漏电流又不绝对等于0,所以保存电荷的时间有限。为了避免电容的电荷消失,所以需要在电荷消失之前补充电荷,这种方法一般称为刷新。因此,DRAM常常配有刷新电路,虽然这样使得操作复杂化,但是顶不住容量大啊。
刷新时间一般在芯片手册中会有参数,一般会有最小刷新时间,
为了提高集成度的同时减少引脚数量,目前很多大容量的DRAM采用的是1位输入、1位输出、地址分时输入(地址多路复用)的方式
上图为SDRAM的功能框图,其中S是同步的意思,不是静态,核心还是DRAM, SDRAM内部有一个逻辑控制单元,并且有一个模式寄存器为其提供控制参数。 SDRAM接收外部输入的控制命令,并在逻辑控制单元的控制下进行寻址、读写、刷新、预充电等操作。
我们在看SDRAM芯片参数时,经常会看到4096 Refresh Cycles/64ms或8192 Refresh Cycles/64ms的标识,这里的4096与8192就代表这个芯片中每个L-Bank的行数。 刷新命令一次仅对一行有效, 也就是说在64ms内这两种规格的芯片分别需要完成4096次和8192次刷新操作。 因此, L-Bank为4096行时刷新命令的发送间隔为15.625μ s( 64ms/4096), 8192行时为7.8125μ s( 64ms/8192)。
2、只读存储器(ROM)
顾名思义,只读存储器在初始化之后就不允许写入或者修改数据,只能从中读出数据。这种存储器,常用来存储固定的数据,比如说设计DDS的时候,先把波形数据(.mif文件)写入ROM,在从中读出来就可以了;或者是计算机的字库。
ROM的电路结构包括存储阵列、地址译码器、和输出缓冲器三个部分
输出缓冲器的作用有两个:一个是提高存储器带负载能力;另一个是对输出的三态进行控制,以便于系统总线连接。
只读存储器(ROM)大致分为以下几类:
掩模只读存储器(Mask ROM)
该存储器在出厂时就已经对数据进行固化了,不可再进行任何数据修改和写入。常用于大批量、定型的产品中。
可编程只读存储器(PROM)
该存储器在出场时已经对立面所有的存储单元写入了1,用户可以通过编程写入数据,但是因为采用的是熔丝或者反熔丝技术进行编程,一旦熔丝烧断或者反熔丝击穿,就不可以再连接上,所以仅可以编程一次。
可擦除的可编程只读存储器(EPROM)
最开始的可擦除的可编程只读存储器(EPROM)是采用紫外线进行擦除,但是因为这种设计需要给ROM开口或者设计一个透明的石英盖板,方便紫外线照射,然后写完之后,就用不透明胶带将盖板遮蔽,比较麻烦。
用电信号可擦除的可编程只读存储器(EEPROM)
不就就出现了用电信号可擦除的可编程只读存储器(E2PROM)。
新一代用电信号可擦除的可编程只读存储器—快闪存储器(Flash Memory)
简称闪存