上位机知识篇---PSRAM和RAM


文章目录

  • 前言
  • 一、RAM(Random Access Memory)
    • 1. 核心定义
    • 分类:
      • SRAM(静态RAM)
      • DRAM(动态RAM)
    • 2. 关键特性
      • SRAM
        • 优点
        • 缺点
        • 应用
      • DRAM
        • 优点
        • 缺点
        • 应用
    • 3. 技术演进
      • DDR SDRAM
      • LPDDR(低功耗DRAM)
      • HBM(高宽带内存)
  • 二、PSRAM(Pseudo Static RAM)
    • 1. 核心定义
      • 核心特点:
        • 伪静态
        • 低成本
    • 2. 工作原理
      • 存储单元
      • 接口设计
      • 刷新机制
    • 3. 关键特性
      • 优点:
        • 成本低
        • 接口简单
        • 中等速度
      • 缺点:
        • 功耗较高
        • 容量受限
    • 4. 应用场景
      • 物联网设备
      • 嵌入式系统
      • 便携设备
  • 三、PSRAM vs RAM(SRAM/DRAM)对比
  • 四、技术选型建议
  • 五、实际案例
    • 案例1:智能手表
    • 案例2:工业传感器
  • 六、未来趋势
    • 新型存储器技术:
      • MRAM
      • ReRAM
      • PSRAM
  • 总结:


前言

以下是关于 PSRAM(伪静态随机存取存储器)RAM(随机存取存储器) 的详细对比与解析,涵盖定义、原理、应用场景及技术差异:


一、RAM(Random Access Memory)

1. 核心定义

RAM 是计算机中用于临时存储数据的易失性存储器,支持快速读写,断电后数据丢失

分类:

SRAM(静态RAM)

SRAM(静态RAM):基于晶体管锁存器存储数据,无需刷新电路,速度快但成本高、密度低。

DRAM(动态RAM)

DRAM(动态RAM):通过电容电荷存储数据,需周期性刷新,密度高、成本低但速度较慢。

2. 关键特性

SRAM

优点

优点:高速(访问时间 1-10ns)、低功耗(无需刷新)、接口简单。

缺点

缺点:价格昂贵(每比特成本是DRAM的6-10倍)、占用物理空间大。

应用

应用:CPU缓存(L1/L2/L3)、FPGA高速缓存。

DRAM

优点

优点:高存储密度(单位面积容量大)、低成本。

缺点

缺点:需刷新电路(每64ms刷新一次)、延迟较高(50-100ns)。

应用

应用:计算机主存(DDR4/DDR5)、手机内存(LPDDR)。

3. 技术演进

DDR SDRAM

DDR SDRAM:双倍数据速率同步DRAM,通过上升沿和下降沿传输数据(如DDR4-3200)。

LPDDR(低功耗DRAM)

LPDDR(低功耗DRAM):针对移动设备优化,降低电压和功耗(如LPDDR5X)。

HBM(高宽带内存)

HBM(高带宽内存):3D堆叠技术,用于GPU和AI芯片(如NVIDIA H100)。

二、PSRAM(Pseudo Static RAM)

1. 核心定义

PSRAM 是一种结合了 DRAM存储单元 和 SRAM接口 的混合型存储器,本质是自带刷新电路的DRAM。

核心特点:

伪静态

伪静态:通过内置刷新控制器模拟SRAM的静态特性,无需外部刷新信号。

低成本

低成本:基于DRAM结构,比SRAM便宜,适合成本敏感场景。

2. 工作原理

存储单元

存储单元:与DRAM相同,使用电容存储电荷。

接口设计

接口设计:兼容SRAM的并行接口(如地址线、数据线、片选信号),简化控制器设计。

刷新机制

刷新机制:内部集成自刷新电路,自动管理电容电荷的刷新周期。

3. 关键特性

优点:

成本低

成本低:比SRAM便宜30-50%,接近DRAM价格。

接口简单

接口简单:无需外部DRAM控制器,适合低复杂度系统。

中等速度

中等速度:访问时间约70-100ns,介于SRAM和DRAM之间。

缺点:

功耗较高

功耗较高:因内部刷新机制,静态功耗高于SRAM。

容量受限

容量受限:密度低于标准DRAM(通常最大容量为256Mb)。

4. 应用场景

物联网设备

物联网设备:如智能家居传感器(需要低成本、低功耗内存)。

嵌入式系统

嵌入式系统:**微控制器(MCU)**扩展内存(如STM32H7系列支持PSRAM)。

便携设备

便携设备:智能手表、电子标签(平衡速度与成本)。

三、PSRAM vs RAM(SRAM/DRAM)对比

维度 SRAM DRAM PSRAM
存储原理 晶体管锁存器 电容电荷 电容电荷 + 自刷新电路
接口复杂度 简单(无需控制器) 复杂(需DRAM控制器) 简单(类SRAM接口)
速度 极快(1-10ns) 较慢(50-100ns) 中等(70-100ns)
成本 极高 低 低(接近DRAM)
功耗 低(静态功耗低) 高(需外部刷新) 中等(自刷新功耗)
典型容量 小(KB~MB级) 大(GB级) 中(MB~256Mb)
典型应用 CPU缓存、FPGA 计算机主存、手机内存 物联网、嵌入式系统

四、技术选型建议

  1. 选择SRAM的场景
    需要纳秒级响应(如CPU缓存)。

系统无DRAM控制器且预算充足。

低功耗要求极高(电池供电设备)。

  1. 选择DRAM的场景
    需要大容量存储(如服务器内存)。

成本敏感且能接受复杂控制器设计(如PC主板)。

高频数据吞吐(如GPU显存)。

  1. 选择PSRAM的场景
    嵌入式系统需扩展内存但MCU无DRAM接口(如STM32)。

平衡成本与性能(替代SRAM降低成本)。

简化硬件设计(无需外部刷新电路)。

五、实际案例

案例1:智能手表

需求:低功耗、中等容量、成本敏感。

方案:采用PSRAM(如AP Memory的64Mb芯片),满足动态数据缓存需求,成本比SRAM低40%

案例2:工业传感器

需求:长时间运行、抗干扰、无需复杂控制器。

方案**:PSRAM存储临时采集数据(如温度、压力值)**,通过SPI接口与MCU通信。

六、未来趋势

新型存储器技术:

MRAM

MRAM(磁性RAM):非易失性、高速、无限次写入,可能替代部分SRAM/PSRAM场景。

ReRAM

ReRAM(阻变RAM):高密度、低功耗,适合物联网设备。

PSRAM

PSRAM优化:通过工艺改进(如22nm制程)提升容量并降低功耗。

总结:

  1. PSRAM 是DRAM与SRAM的折中方案,适合成本敏感、接口简单的场景。
  2. SRAM 和 DRAM 仍是高性能与大容量的主流选择。
  3. 技术选型需综合 速度、成本、功耗、系统复杂度 四大因素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/79396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt QComboBox 下拉复选多选(multicombobox)

Qt QComboBox 下拉复选多选(multicombobox),备忘,待更多测试 【免费】QtQComboBox下拉复选多选(multicombobox)资源-CSDN文库

ElasticSearch深入解析(五):如何将一台电脑上的Elasticsearch服务迁移到另一台电脑上

文章目录 0.安装数据迁移工具1.导出数据2.导出mapping3.导出查询模板4.拷贝插件5.拷贝配置6.导入到目标电脑上 0.安装数据迁移工具 Elasticsearch dump是一个用于将Elasticsearch索引数据导出为JSON格式的工具。你可以使用Elasticsearch dump通过命令行或编程接口来导出数据。…

微服务中组件扫描(ComponentScan)的工作原理

微服务中组件扫描(ComponentScan)的工作原理 你的问题涉及到Spring框架中ComponentScan的工作原理以及Maven依赖管理的影响。我来解释为什么能够扫描到common模块的bean而扫描不到其他模块的bean。 根本原因 关键在于**类路径(Classpath)**的包含情况: Maven依赖…

Python镜像源配置:

1.用命令进行配置: 1. 使用命令行方式更改镜像源 可以直接通过 pip config 命令来设置全局或用户级别的镜像源地址。例如,使用清华大学开源软件镜像站作为新的索引 URL: pip config set global.index-url https://pypi.tuna.tsinghua.edu.…

【SpringBoot】Spring中事务的实现:声明式事务@Transactional、编程式事务

1. 准备工作 1.1 在MySQL数据库中创建相应的表 用户注册的例子进行演示事务操作,索引需要一个用户信息表 (1)创建数据库 -- 创建数据库 DROP DATABASE IF EXISTS trans_test; CREATE DATABASE trans_test DEFAULT CHARACTER SET utf8mb4;…

javascript 深拷贝和浅拷贝的区别及具体实现方案

一、核心区别 特性浅拷贝深拷贝复制层级仅复制对象的第一层属性递归复制对象的所有层级属性(包括嵌套对象和数组)引用关系嵌套对象/数组与原对象共享内存(引用拷贝)嵌套对象/数组与原对象完全独立(值拷贝)…

pytorch对应gpu版本是否可用判断逻辑

# gpu_is_ok.py import torchdef check_torch_gpu():# 打印PyTorch版本print(f"PyTorch version: {torch.__version__}")# 检查CUDA是否可用cuda_available torch.cuda.is_available()print(f"CUDA available: {cuda_available}")if cuda_available:# 打印…

国内无法访问GitHub官网的问题解决

作为一名程序员,在国内访问GitHub官网经常会遇到打开过慢或者访问失败的问题,但通过一些技巧可以改善访问体验。GitHub访问问题的根源在于GitHub官网访问不稳定的主要原因在于DNS解析过程。当我们直接访问github.com时,需要通过DNS服务器将域…

使用 MediaPipe 和 OpenCV 快速生成人脸掩膜(Face Mask)

在实际项目中,尤其是涉及人脸识别、换脸、图像修复等任务时,我们经常需要生成人脸区域的掩膜(mask)。这篇文章分享一个简单易用的小工具,利用 MediaPipe 和 OpenCV,快速提取人脸轮廓并生成二值掩膜图像。 …

【动态导通电阻】GaN功率器件中动态导通电阻退化的机制、表征及建模方法

2019年,浙江大学的Shu Yang等人在《IEEE Journal of Emerging and Selected Topics in Power Electronics》上发表了一篇关于GaN(氮化镓)功率器件动态导通电阻(Dynamic On-Resistance, RON)的研究论文。该文深入探讨了GaN功率器件中动态导通电阻退化的机制、表征方法、建模…

从括号匹配看栈:数据结构入门的实战与原理

在计算机科学的世界里,数据结构是程序员的 “瑞士军刀”,不同的数据结构适用于不同的场景,能高效解决各类问题。其中,栈作为一种简单却强大的数据结构,在很多实际应用中发挥着关键作用。今天,我们就通过一个…

Dubbo(89)如何设计一个支持多语言的Dubbo服务?

设计一个支持多语言的Dubbo服务需要考虑以下几个方面: 服务接口设计:确保服务接口的定义可以被不同语言实现。序列化协议:选择一个支持多语言的序列化协议,例如Protobuf、Thrift、gRPC等。服务注册与发现:确保服务注册…

力扣面试150题--分隔链表

day 39 题目描述 思路 遍历链表,每一个点与值比较,比值小就继续,比值大就放到链表尾部即可 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int…

VSCode 查看文件的本地修改历史

1. 使用时间线视图(Timeline) 新版 VSCode 内置了一个叫 Timeline(时间线) 的功能,可以查看: 本地文件修改记录(包括保存历史)Git 提交历史(如果仓库是 Git 管理的&…

C++学习-入门到精通-【3】控制语句、赋值、自增和自减运算符

C学习-入门到精通-【3】控制语句、赋值、自增和自减运算符 控制语句、赋值、自增和自减运算符 C学习-入门到精通-【3】控制语句、赋值、自增和自减运算符一、什么是算法二、伪代码三、控制结构顺序结构选择结构if语句if...else语句switch语句 循环结构while语句 四、算法详述&a…

父子组件双向绑定

v-model 语法糖实现 vue中我们在input中可以直接使用v-model来完成双向绑定,这个时候 v-model 通常会帮我们完成两件事: v-bind:value的数据绑定@input的事件监听如果我们现在封装了一个组件,其他地方在使用这个组件时,是否也可以使用v-model来同时完成这两个功能呢? 当我…

用Selenium开启自动化网页交互与数据抓取之旅

用Selenium开启自动化网页交互与数据抓取之旅 在当今数字化时代,数据的价值不言而喻,而网页作为海量数据的重要载体,如何高效获取其中的关键信息成为众多开发者和数据爱好者关注的焦点。Selenium这一强大工具,为我们打开了自动化…

VB.net序列化和反序列化的使用方法和实用场景

引言 相信很多初学编程的人都会提出过这个疑问:“既然我的变量可以存在内存之中,那么是否也可以存在硬盘之中呢” 其实我想回答的是,完全可以而且方法不止一种,而今天讲的是序列化最经典的——二进制序列化 由于序列化的部分已…

Android OTA

一、OTA运行原理 Android 平台提供 Google diff arithmetic 差分机制,升级包支持完整升级以及差分升级,OTA 运行原理图如下所示。 1. OTA Server 负责对更新包进行上传,下载以及版本的管理。 2. 开发者在修改 Android 系统后,通…

Untiy基础学习(三)Untiy中编写脚本的基本规则

一、怎么创建脚本 在Project窗口下,右键Create C#Script 即可创建脚本 创建脚本的注意事项 : 1)类名和文件名必须一致,不然不能挂载(因为反射机制创建对象,会通过文件名去找Type) 2)没有特殊需…