SRAM,寄存器,锁存器,触发器的理解(学习笔记)

 

 

 

 

 

存储空间:SRAM>寄存器>锁存器=触发器 

 

构成: 

        SRAM由锁存器构成;

        寄存器由触发器构成;

        触发器可以由锁存器以主从结构构成,但不是所有触发器都是锁存器构成; 

### 使用锁存器实现寄存器的方法及原理 #### 主从结构的边沿触发寄存器 构成一个边沿触发寄存器最常见的方法是采用主从结构[^1]。这种设计通过两个阶段来确保数据仅在特定时刻被更新,从而提高了稳定性和可靠性。 - **主级锁存器**:负责接收输入信号,在时钟脉冲的第一个半周期(通常是上升沿之前)捕获数据。 - **从机锁存器**:与时钟脉冲同步操作,在第二个半周期(即下降沿之后)传递来自主级的数据到输出端口。 这样的双层架构使得整个系统能够在精确的时间点完成状态转换,有效防止了竞争条件和亚稳态问题的发生。 #### 单位与多位寄存器的设计理念 单个锁存器能够保存一位二进制信息;然而实际应用中通常需要处理更复杂的数据形式。因此,为了满足不同应用场景下的需求,可以通过组合多个独立工作的锁存单元创建多位寄存器[^2]。例如: - 对于8位寄存器而言,则需串联八个相同的锁存组件; - 若要构建可表示更大数值范围的n位寄存器,则相应增加参与协作的一比特宽度基本模块数量至n个。 这种方法不仅适用于静态随机访问存储器件(SRAM),也广泛应用于动态版本(DRAM)[^4]以及其他类型的临时性快速缓冲区之中。 ```python class Latch: def __init__(self, value=0): self.value = value def set(self, new_value): self.value = new_value def create_register(num_bits): return [Latch() for _ in range(num_bits)] register_8bits = create_register(8) print([l.value for l in register_8bits]) ``` 上述Python代码展示了如何模拟建立一个多比特宽的寄存器模型。这里定义了一个简单的`Latch`类用于模仿最基本的锁存行为,并提供了一种便捷的方式去初始化任意长度的寄存器实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值